OpenBTS is an improved map of BTSearch that includes aggregated data of Polish BT stations & UKE permits and radiolines.
- View stations on simple to use map
- See UKE (Urząd Komunikacji Elektronicznej) data in very simple view which is updated every 30 days
- Very powerful & public REST API
- Create private or public lists with your favorite stations
- Fast & beautiful interface
and much more...
Install dependencies from the root directory. Bun handles the pnpm workspace structure automatically.
bun installNote: You may see a warning about the
enginesfield preferring pnpm. You can safely ignore this when using Bun.
The server requires PostgreSQL and Redis. You can spin these up using the provided Docker Compose file.
# Start only the database and redis services
docker-compose up -d db redisThis docker compose file provides custom PostgreSQL build with PostGIS already installed since our server requires that.
Ensure the database is running before starting the server.
Before running the server, apply the database schema:
cd packages/drizzle
export DATABASE_URL="postgres://user:password@localhost:5432/openbts"
bun run db:migrate- Navigate to the server directory:
cd apps/server - Copy the example environment file:
cp .env.example .env
- Edit
.envto match your local Docker setup:PORT=3030 DATABASE_URL="postgres://user:password@localhost:5432/openbts" REDIS_URL="redis://localhost:6379" BETTER_AUTH_SECRET="your-generated-secret"
Start the server in watch mode:
bun run devThe server will run on http://localhost:3030.
# Build the TypeScript code
bun run build
# Start the compiled server
bun run startThe client uses environment variables to configure the API endpoint.
- Navigate to the client directory:
cd apps/client - Copy the example environment file:
cp .env.example .env
- (Optional) Edit
.envif your server is running on a different port:VITE_API_URL=http://localhost:3030/api/v1
Start the dev server:
bun run devAccess the client at the URL shown in the terminal (usually http://localhost:5173).
To test the production build locally:
# Build the application
bun run build
# Preview the production build
bun run preview