Getting Started
Welcome to Eneo! This guide will help you get started whether you’re a municipal organization evaluating the platform or a developer looking to contribute.
Choose Your Path
🏛️ For Municipal Organizations
If you’re a public sector organization interested in deploying Eneo:
1. Learn & Evaluate
- Explore the key features and understand what Eneo can do
- Review our audit logging capabilities
- Check out the deployment guide for infrastructure requirements
- Contact us at digitalisering@sundsvall.se for guidance from other municipalities
2. Test Drive
Set up a development instance to explore the platform:
git clone https://github.com/eneo-ai/eneo.git
cd eneo && code .
# Click "Reopen in Container" when prompted in VS CodeAccess your instance at http://localhost:3000 with default credentials:
- Email:
user@example.com - Password:
Password1!
3. Deploy to Production
When you’re ready to deploy:
- Review the deployment guide
- Configure authentication with your identity provider
- Set up your AI providers
- Review audit logging practices in our audit logging guide
💻 For Developers
Contributing to Eneo? Here’s how to get started:
Prerequisites
- Docker Desktop with DevContainers support
- VS Code with Dev Containers extension
- Git
Quick Setup (DevContainer - Recommended)
The fastest way to get started:
git clone https://github.com/eneo-ai/eneo.git
cd eneo
code .
# Click "Reopen in Container" when promptedThe DevContainer includes:
- Pre-configured Python environment
- Node.js and pnpm
- PostgreSQL with pgvector
- Redis
- All necessary dependencies
Manual Setup
If you prefer manual setup or need more control:
Requirements:
- Python ≥ 3.10
- Node.js ≥ v20
- pnpm 8.9.0
- Docker (for PostgreSQL and Redis)
# Clone the repository
git clone https://github.com/eneo-ai/eneo.git
cd eneo
# Backend setup
cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -e ".[dev]"
# Frontend setup
cd ../frontend
pnpm install
# Start services (requires 3 terminals)
# Terminal 1: Backend
cd backend && uvicorn app.main:app --reload --port 8123
# Terminal 2: Frontend
cd frontend/apps/client && pnpm dev
# Terminal 3: Worker
cd backend && python -m app.workerAccess Your Development Environment
- Platform: http://localhost:3000
- API Documentation: http://localhost:8123/docs
- Default Login:
user@example.com/Password1!
Next Steps for Developers
-
Read the Documentation
-
Explore the Codebase
- Backend: FastAPI with Python 3.11+
- Frontend: SvelteKit with TypeScript
- Database: PostgreSQL with pgvector
- Cache/Queue: Redis with ARQ
-
Make Your First Contribution
- Find issues labeled “good first issue” on GitHub
- Fork the repository
- Create a feature branch
- Submit a pull request
Common Issues
DevContainer Issues
If the DevContainer fails to start:
- Ensure Docker Desktop is running
- Check you have enough disk space (5GB+ recommended)
- Try rebuilding the container:
Dev Containers: Rebuild Container
Database Connection Issues
If you can’t connect to the database:
- Ensure PostgreSQL is running
- Check environment variables in
.envfiles - Verify port 5432 is not in use by another service
File Upload Issues
File uploads require the worker service to be running:
cd backend && python -m app.workerGet Help
- Documentation: GitHub docs folder
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: digitalisering@sundsvall.se (public sector organizations)
- Forum: forum.eneo.ai (requires government/municipality email)
What’s Next?
Last updated on