Getting Started - jihadkhawaja/Egroo GitHub Wiki
Getting Started
This guide will help you get Egroo up and running quickly in your environment.
🏃♂️ Quick Start
The fastest way to get started with Egroo is using Docker Compose:
Using Docker Compose (Recommended)
-
Clone the repository:
git clone https://github.com/jihadkhawaja/Egroo.git cd Egroo
-
Set up environment variables:
# Create environment file cp .env.example .env # Edit the environment variables nano .env
-
Start the services:
cd src docker-compose -f docker-compose-egroo.yml up -d
-
Access the application:
- Web Interface: http://localhost:49168
- API Server: http://localhost:49117
- Swagger Documentation: http://localhost:49117/swagger
🔧 Manual Setup
If you prefer to run Egroo without Docker:
Prerequisites
- .NET 8 SDK
- PostgreSQL (version 12 or higher)
- Node.js (for client-side development)
Database Setup
-
Install PostgreSQL and create a database:
CREATE DATABASE egroo; CREATE USER egroo_user WITH PASSWORD 'your_password'; GRANT ALL PRIVILEGES ON DATABASE egroo TO egroo_user;
-
Update connection string in
appsettings.json
:{ "ConnectionStrings": { "DefaultConnection": "Host=localhost;Database=egroo;Username=egroo_user;Password=your_password" } }
Running the Application
-
Start the API Server:
cd src/Egroo.Server dotnet run
-
Start the Web Client (in a new terminal):
cd src/Egroo/Egroo dotnet run
🎯 What's Next?
- Configure your setup for production use
- Set up development environment for contributing
- Deploy to production with various hosting options
- Explore the API to build custom integrations
🚨 Common Issues
- Database connection errors: Ensure PostgreSQL is running and credentials are correct
- Port conflicts: Check if ports 5175 (API) and 5174 (Web) are available
- CORS issues: Verify your allowed origins in configuration
For more troubleshooting help, see the Troubleshooting Guide.