- Develop a Next.js web application exclusively.
- Explore the possibilities of running the application on the Edge.
- Experiment with cutting-edge technologies and concepts.
- Implement a robust deployment and hosting strategy using Vercel and Docker containers.
- Establish a streamlined DevOps workflow with GitHub Actions for automated builds and deployments.
- Conduct thorough testing to ensure the application's reliability and performance.
- Incorporate external devices like PlantboardVaccuum (an Arduino-based system for automating plant data collection and watering).
- Project Description
- Technologies
- Getting Started
- Deployment
- Testing
- External Devices
- Contributing
- License
This project aims to achieve several ambitious goals, primarily focusing on Next.js, Edge computing, and DevOps. By exploring the cutting-edge aspects of web development and automation, we aim to create a forward-thinking web application.
- Next.js
- Vercel
- Docker
- GitHub Actions
- Arduino (for PlantboardVaccuum)
- Prisma
- Postgres(self-hosted in future maybe Neon)
- TailwindCSS
- Radix Primitives
- NextAuth
To get started with this project, follow these steps:
- Clone the repository.
- Install the required dependencies.
- Configure the application for your specific needs.
- Start the development server.
git clone https://github.com/jauki/plantboard.git
cd plantboard
yarn install
yarn devWe use Vercel and Docker containers for deployment. The deployment process is automated with GitHub Actions. Follow these steps to deploy the application:
- Create a Vercel account.
- Configure your Vercel project settings.
- Push your changes to the repository, and the GitHub Actions workflow will automatically build and deploy your application.
To ensure the reliability and performance of the application, we maintain a rigorous testing process. Various testing methods and tools are used to cover different aspects of the application.
To run tests, use the following command:
yarn testOne of the unique aspects of this project is its integration with external devices, such as PlantboardVaccuum. This Arduino-based system collects data from plants and automates the watering process, contributing to a smarter and more efficient gardening experience.
We welcome contributions from the open-source community. If you'd like to contribute to this project, please follow our Contributing Guidelines.
This project is licensed under The MIT License (MIT) - see the LICENSE.md file for details.