Skip to content

Commit

Permalink
Merge branch 'main' into hot-fixes-2
Browse files Browse the repository at this point in the history
  • Loading branch information
FussuChalice authored Dec 2, 2024
2 parents a2a2d8b + 0a45adf commit 8ef75e1
Show file tree
Hide file tree
Showing 88 changed files with 1,198 additions and 1,260 deletions.
22 changes: 1 addition & 21 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,6 @@ updates:
commit-message:
prefix: 'chore(actions)'

- package-ecosystem: 'github-actions'
target-branch: 'cpe-archive'
directory: '/'
schedule:
interval: 'daily'
commit-message:
prefix: 'chore(actions)'

# Maintain dependencies for npm
- package-ecosystem: 'npm'
directory: '/'
Expand All @@ -25,17 +17,5 @@ updates:
- dependency-type: 'production'
- dependency-type: 'development'
commit-message:
prefix: 'feat(deps)'
prefix-development: 'build(deps)'

- package-ecosystem: 'npm'
target-branch: 'cpe-archive'
directory: '/'
schedule:
interval: 'daily'
allow:
- dependency-type: 'production'
- dependency-type: 'development'
commit-message:
prefix: 'feat(deps)'
prefix: 'build(deps)'
prefix-development: 'build(deps)'
58 changes: 0 additions & 58 deletions .github/workflows/deploy-cpe.yml

This file was deleted.

29 changes: 9 additions & 20 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
name: CD
env:
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}

on:
workflow_dispatch:
Expand All @@ -11,7 +14,7 @@ jobs:
if: ${{ github.repository == 'sws2apps/organized-app' && github.ref == 'refs/heads/main' }}
environment:
name: Production
url: https://cpe-web.sws2apps.app
url: https://organized-app.com
runs-on: ubuntu-latest

permissions:
Expand All @@ -37,23 +40,9 @@ jobs:
run: npx semantic-release
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
VITE_FINGERPRINT_API_CLIENT_KEY: ${{ secrets.VITE_FINGERPRINT_API_CLIENT_KEY }}
VITE_FIREBASE_APIKEY: ${{ secrets.VITE_FIREBASE_APIKEY }}
VITE_FIREBASE_AUTHDOMAIN: ${{ secrets.VITE_FIREBASE_AUTHDOMAIN }}
VITE_FIREBASE_PROJECTID: ${{ vars.VITE_FIREBASE_PROJECTID }}
VITE_FIREBASE_APPID: ${{ secrets.VITE_FIREBASE_APPID }}
VITE_FIREBASE_MEASUREMENTID: ${{ secrets.VITE_FIREBASE_MEASUREMENTID }}

- name: Check if new version has been generated
id: check_build
uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6
with:
files: 'dist'

- name: Deploy to Firebase
if: ${{ steps.check_build.outputs.files_exists == 'true' }}
uses: sws2apps/firebase-deployment@f4e1803b78ce7c1b136c532f793c15eb34559b0e
with:
workloadIdentityProvider: ${{ secrets.WORKLOAD_IDENTITY_PROVIDER }}
serviceAccount: ${{ secrets.SERVICE_ACCOUNT }}
project: cpe-sws
- name: Install Vercel CLI
run: npm install --global vercel@latest

- name: Deploy project to Vercel
run: vercel deploy --prod --token=${{ secrets.VERCEL_TOKEN }}
40 changes: 11 additions & 29 deletions .github/workflows/redeploy.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
name: Deploy CPE
name: Redeploy App
env:
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}

on:
workflow_dispatch:
Expand All @@ -8,10 +11,10 @@ permissions: read-all
jobs:
redeploy_dev:
name: Rebuild and Deploy to Production
if: ${{ github.repository == 'sws2apps/organized-app' && github.ref == 'refs/heads/cpe-archive' }}
if: ${{ github.repository == 'sws2apps/organized-app' && github.ref == 'refs/heads/main' }}
environment:
name: Production
url: https://cpe-web.sws2apps.app
url: https://organized-app.com
runs-on: ubuntu-latest

permissions:
Expand All @@ -22,37 +25,16 @@ jobs:
- name: Checkout for release preparation
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
ref: cpe-archive
ref: main
persist-credentials: false

- name: Use Node.js LTS version
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af
with:
node-version: lts/Iron

- name: Install package dependencies
run: npm ci

- name: Rebuild App
run: npm run build
env:
VITE_FINGERPRINT_API_CLIENT_KEY: ${{ secrets.VITE_FINGERPRINT_API_CLIENT_KEY }}
VITE_FIREBASE_APIKEY: ${{ secrets.VITE_FIREBASE_APIKEY }}
VITE_FIREBASE_AUTHDOMAIN: ${{ secrets.VITE_FIREBASE_AUTHDOMAIN }}
VITE_FIREBASE_PROJECTID: ${{ vars.VITE_FIREBASE_PROJECTID }}
VITE_FIREBASE_APPID: ${{ secrets.VITE_FIREBASE_APPID }}
VITE_FIREBASE_MEASUREMENTID: ${{ secrets.VITE_FIREBASE_MEASUREMENTID }}

- name: Check if new version has been generated
id: check_build
uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6
with:
files: 'dist'
- name: Install Vercel CLI
run: npm install --global vercel@latest

- name: Deploy to Firebase
if: ${{ steps.check_build.outputs.files_exists == 'true' }}
uses: sws2apps/firebase-deployment@f4e1803b78ce7c1b136c532f793c15eb34559b0e
with:
workloadIdentityProvider: ${{ secrets.WORKLOAD_IDENTITY_PROVIDER }}
serviceAccount: ${{ secrets.SERVICE_ACCOUNT }}
project: cpe-sws
- name: Deploy project to Vercel
run: vercel deploy --prod --token=${{ secrets.VERCEL_TOKEN }}
51 changes: 51 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# [3.0.0] (2024-12-01)

## The Organized App is released today!

After many months of dedication and hard work, we are excited to announce the release of **Organized** – the biggest app update ever! This update is designed to make congregation scheduling and responsibilities easier than ever before and build a solid foundation for big updates in the future. With the Organized app, fulfilling your responsibilities just became easy, efficient, and intuitive.

### ✨ What's New?

This release marks a major milestone, thanks to the valuable support from all contributors who have helped shape this app. Your code and design contributions, feedback, and testing are priceless, and we're thrilled to see how Organized will help you and thousands of other friends worldwide.

We’re just getting started though – stay tuned for even bigger updates, because the journey is only going to get more exciting!

### ⚙️ Overview

This release represents a complete rewrite of the app, making it easier to use, much faster, and cleaner under the hood. We've revamped the user interface, speeding up the code behind the scenes so many tasks now take milliseconds instead of seconds. For some features, the performance is so fast that we even had to remove the loading indicator. The customization options are better than ever, and we’ve added several new features, including:

- **Auxiliary Pioneer Form**
- **Ministry Timer Widget**
- **Publisher Records**
- **Advanced Public Talk Scheduling Features**
- **Service Year Overview**
- **New Meeting Print Templates**
- **Many Data Now Available for S-Form Export**
- **Big Privacy & Security Updates**
- **And So Much More!**

The autofill system has been updated with new algorithms for faster, more accurate data entry. The app is now available in dozens of languages, making it easy to start using right away. In short, the app is brand new, allowing you to migrate your older data and start enjoying a much smoother and more efficient experience.

### 📚 Useful resources

- **Explore Organized in action**: Want to see the full potential of Organized? Head over to [test.organized-app.com](https://test.organized-app.com) to try it out without registering. Get a sneak peek to decide if Organized is a good fit for you.
- **Get started today**: Ready to begin? Register now at [organized-app.com](https://organized-app.com) and start using Organized within your congregation. It’s quick, easy, and designed to meet your theocratic needs.

- **Need help?**: Our [User Guide](https://guide.organized-app.com) is here to assist you! It provides clear, step-by-step instructions on every feature, whether you're a new user or helping others. Also, check out our [YouTube channel](https://www.youtube.com/@organized-app) for key tutorials in video format.

### 🚀 What's next?

We already have the next set of features designed and are planning how to implement them in a way that enhances the app’s functionality to meet even more of your needs. The development doesn’t stop here!

Over the next few weeks, we might need to make some refinements based on your real user feedback. Every input here on GitHub is appreciated!

### 💡 How you can help

We’re incredibly grateful for all the support we’ve received so far. You can continue helping us improve by:

- Reporting any bugs you encounter by creating an issue here: [Create a New Issue](https://github.com/sws2apps/organized-app/issues/new/choose)
- Contributing to new feature development
- [Translating the app](https://crowdin.com/project/organized) to your language if it's not yet translated, or improving existing translations by using the app in real-world scenarios.

Thank you for being part of this journey, and stay tuned!
Your sws2apps team
4 changes: 0 additions & 4 deletions firebase.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@
{
"source": "**",
"headers": [
{
"key": "Content-Security-Policy",
"value": "default-src 'self' https://organized-sws.firebaseapp.com blob:; img-src 'self' data: https://*.googleusercontent.com https://s.yimg.com blob:; script-src 'self' 'unsafe-eval' https://apis.google.com https://www.googletagmanager.com; connect-src 'self' data: https://*.organized-app.com https://app.jw-cdn.org https://www.jw.org https://identitytoolkit.googleapis.com https://apis.google.com https://securetoken.googleapis.com https://firebaseinstallations.googleapis.com https://firebase.googleapis.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' data: https://fonts.gstatic.com; base-uri 'self' https://www.jw.org; form-action 'self'; object-src 'none'; frame-ancestors 'none'"
},
{ "key": "Cache-Control", "value": "no-cache" },
{ "key": "X-Content-Type-Options", "value": "nosniff" },
{ "key": "X-Frame-Options", "value": "DENY" },
Expand Down
28 changes: 10 additions & 18 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,17 @@
content="width=device-width, initial-scale=1, user-scalable=no"
/>
<meta name="theme-color" content="#f8f9ffff" />
<title>Organized: App for Jehovah's Witnesses</title>
<meta
name="description"
content="A universal app to simplify management of Jehovah's Witnesses congregation life. View assignments, schedule meetings, send reports effortlessly and way more. Simplify your routine tasks and focus on what matters most!"
/>
content="A modern all-in-one app for Jehovah's Witnesses to simplify congregation management. Create meeting schedules, view your assignments, create and submit reports, and way more. Save time on routine tasks and focus on other important things!"
/>
<meta property="og:title" content="Organized: The modern all-in-one app for Jehovah's Witnesses congregations">
<meta property="og:description" content="User-friendly, secure, and cross-platform. Organized makes managing Jehovah’s Witnesses congregation life easy and efficient! Create schedules, view assignments, and submit reports — quick and simple. This app is a great help for everyone in the congregation. Try it now and see the difference!">
<meta property="og:image" content="img/open-graph/organized-app-og-image.jpg">
<meta property="og:url" content="https://organized-app.com">
<meta property="og:type" content="website">
<meta property="og:site_name" content="Organized">
<link rel="apple-touch-icon" href="img/icon/icon-maskable-1024x1024.png" />
<link rel="apple-touch-icon" href="img/icon/icon-maskable-512x512.png" />
<link rel="apple-touch-icon" href="img/icon/icon-maskable-192x192.png" />
Expand Down Expand Up @@ -193,7 +200,7 @@
media="screen and (device-width: 744px) and (device-height: 1133px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"
href="img/splashscreen/8.3__iPad_Mini_portrait.png"
/>
<title>Organized (sws2apps)</title>

<style>
.loader-waiting-js {
width: 216px;
Expand Down Expand Up @@ -439,21 +446,6 @@
}
</style>
</noscript>

<script>
const theme = localStorage.getItem('theme') || 'light';
const color = localStorage.getItem('color') || 'blue';
const newTheme = `${color}-${theme}`;

document.documentElement.setAttribute('data-theme', newTheme);

const themeColor = getComputedStyle(
document.documentElement
).getPropertyValue('--accent-100');
document
.querySelector("meta[name='theme-color']")
.setAttribute('content', themeColor);
</script>
</head>
<body>
<noscript>
Expand Down
Loading

0 comments on commit 8ef75e1

Please sign in to comment.