NOTICE: This project is in active development and does not have a stable release
Management application for the event technology of the Gymnasium Bürgerwiese Dresden.
- SSR
- Lazy loading for items
- Permissions
- Logging
- Revision of icon system
- Borrowing system
- Admin Panel, including, but not limited to:
- User management
- Log/activity insight
- Management of:
- (Sub-)Categories
- Locations
- Conditions
- "Publicly" accessible contact information
- User profile management
- Basic security fixes
- Login rate limit
- Error message obscurity
- Ones that I notice at some point
- Batch actions for items
- Item history
- Deleted items will be kept in trash for X days
- Detailed history of edits
- Possibly implementation of rollbacks
- Accouncement/note board
- English translation (multi language system)
The following shows you a basic guide on how to develop on and build the project (on UNIX based systems).
- Pull the source code:
git clone https://github.com/maxbrc/buewi-tech.git - Navigate inside and create the secrets folder:
cd buewi-tech && mkdir secrets - Create the Ed25519 a private key seed:
head -c 32 /dev/random > secrets/ed25519_seed.bin - Run the server
cd servergo run ./cmd/main.go
- Run the client
cd clientnpm installnpm run dev
- Follow the dev guide including step 3
- Build the client
cd client- Install build dependencies:
npm install --production - Build the client:
npm run build
- Build the server:
cd server && go build ./cmd/main.go - Clean up unnecessary files
When you work on the project yourself and want to change dependencies through npm, make sure to append the --legacy-peer-deps flag, as the ReactAutosizeInput package is technically deprecated for this version of React.