HabitBot is a productivity application designed to help you track and manage your habits effectively.
- Node.js (v14 or higher)
- Docker (for local deployment)
-
Clone the repository:
git clone https://github.com/yourusername/habitbot.git cd habitbot -
Install dependencies:
pnpm install
-
Set up environment variables: Create a
.envfile in both the frontend and backend directories and add the necessary environment variables. Refer to.env.examplein each respective folder for the required variables. -
Run the application:
pnpm run dev
-
Access the application: Open your browser and navigate to
http://localhost:3000.
Before proceeding, ensure you update the environment variables:
-
Configure environment variables:
- In the frontend
.envfile, change the backend URL tohttp://backend:8000instead ofhttp://localhost:8000. - In the backend
.envfile, update the database URL to usedbas the host instead oflocalhost.
Ensure you have a
docker-compose.ymlfile in the root directory with the necessary credentials and configurations. Here is an example snippet for the database service:version: '3.8' services: db: image: postgres:17 environment: POSTGRES_USER: yourusername POSTGRES_PASSWORD: yourpassword POSTGRES_DB: habitbot ports: - "5432:5432"
- In the frontend
-
Build and run the Docker containers:
docker-compose up --build
-
Access the application: Open your browser and navigate to
http://localhost:3000.
Make sure to replace yourusername and yourpassword with your actual database credentials.
We have several exciting features planned for future releases:
Implementing a robust authentication system to ensure user data is secure. This will include:
- User registration and login
- Password recovery
- OAuth integration with popular services like Google and Facebook
Allowing users to upload files and images within their conversations. This will include:
- Drag and drop file upload
- Image preview within the chat
- Support for various file types
Providing users with the ability to edit their previous messages. This will include:
- Inline message editing
- Version history to track changes
- Permissions to control who can edit messages
Stay tuned for updates as we continue to improve HabitBot!
We welcome contributions! Please read our CONTRIBUTING.md for guidelines on how to get started.
This project is licensed under the MIT License. See the LICENSE file for details.