Open Heavens is a web application that provides daily devotional content from Pastor E.A. Adeboye's Open Heavens devotional. The application features daily devotionals, Bible readings, and hymns, with content that updates automatically every day. Built with modern web technologies and structured as a monorepo using Turborepo, the project enables efficient build caching and dependency management across multiple packages.
- 📖 Daily devotional content
- 🎵 Hymn collection
- 📱 Mobile-responsive design
- 📊 SEO optimized with metadata
- 🔄 Automatic content updates
- 📚 Bible reading integration
Before you begin, ensure you have the following installed:
- Node.js >= 20
- npm >= 10.5.0
open-heavens/
├── apps/
│ └── web/ # Next.js web application
│ └── src/
│ ├── app/ # App router components
│ ├── bible/# Bible integration
│ └── hymns/# Hymns feature
├── packages/
│ ├── ui/ # Shared React component library
│ ├── utils/ # Shared utilities and helper functions
│ ├── bible/ # Bible data and functionality
│ ├── sunday-school/# Sunday School content and features
│ ├── eslint-config/# Shared ESLint configurations
│ └── typescript-config/ # Shared TypeScript configurations
-
Clone the repository:
git clone [your-repository-url]
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
The application will be available at http://localhost:3000
.
npm run dev
- Start all applications in development modenpm run build
- Build all applications and packagesnpm run lint
- Run ESLint across all projectsnpm run format
- Format all files with Prettier
- Framework: Next.js with App Router
- Language: TypeScript
- Monorepo Tool: Turborepo
- Package Manager: npm
- Styling: Tailwind CSS
- Linting: ESLint with custom configurations
- Formatting: Prettier
- Data Updates: Automatic revalidation every 6 hours
This project uses Turborepo for managing the monorepo. The main applications and packages are:
web
: The main Next.js web application featuring daily devotionals@repo/ui
: A shared React component library for consistent UI/UX@repo/utils
: Shared utilities including metadata construction and helper functions@repo/bible
: Bible data management and functionality@repo/sunday-school
: Sunday School content management and features@repo/eslint-config
: Shared ESLint configurations@repo/typescript-config
: Shared TypeScript configurations
- 📖 Daily devotional content
- 🎵 Hymn collection
- 📱 Mobile-responsive design
- 📊 SEO optimized with metadata
- 🔄 Automatic content updates
- 📚 Bible reading integration
- 🎓 Sunday School materials
- ⚡ Fast and efficient performance
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0) - see the LICENSE.md file for details.
- ✅ You can use this software for commercial purposes
- ✅ You can modify this software
- ✅ You can distribute this software
- ✅ You can use this software privately
- ✅ You can use patent claims
- ❗ You must disclose the source code when you distribute this software
- ❗ You must state changes you make to this software
- ❗ You must include the original license and copyright notice
- ❗ You must disclose the source code of your version if you run it on a server and let users interact with it over a network
- ❗ You must license your modifications under AGPL-3.0
- ❌ This software comes with no warranty
For more information about the AGPL-3.0 license, visit GNU AGPL-3.0.
- Pastor E.A. Adeboye for the Open Heavens Devotional content
- The Redeemed Christian Church of God
This project is maintained by Ife Odubela:
- LinkedIn: @ife-odubela
- Twitter: @Ife_Ody
If you have any questions, suggestions, or would like to contribute, feel free to reach out!