ghostforge/README.md

57 lines
2.4 KiB
Markdown

<div align="center">
<img src="doc/ghostforge.png" alt="ghostforge Logo">
# ghostforge
ghostforge manages **false identity information** for privacy prudent persons.
tl;dr it's a fancy DB frontend with sensible design, tailored features, and a nice UX.<br/>
[Deployment](#deployment) •
[Frequently Asked Questions](#faq) •
[Contributing](#contributing) •
[License](#license)
</div>
## Deployment
Installation instructions are only provided for `docker`-based deployment. For manual deployment, you'll need to set environment variables (see `.env`) for database access before running `ghostforge` yourself.
### using docker
You'll need `docker-compose` installed or you can convert the contents of `docker-compose.yml` into `docker run` commands yourself. Install and run `ghostforge` with something like:
```bash
git clone https://github.com/darrylnixon/ghostforge.git && \
cd ghostforge && \
cp .env.sample .env && \
PW=$(/usr/bin/env python3 -c "import secrets; print(secrets.token_urlsafe(32))") /bin/bash -c 'sed -i "" "s/^POSTGRES_PASSWORD=.*/POSTGRES_PASSWORD=$PW/" .env' && \
JWT=$(/usr/bin/env python3 -c "import secrets; print(secrets.token_urlsafe(32))") /bin/bash -c 'sed -i "" "s/^GHOSTFORGE_JWT_SECRET=.*/GHOSTFORGE_JWT_SECRET=$JWT/" .env';
docker-compose up --detach --build;
docker exec --interactive --tty ghostforge ghostforge_adduser;
```
Follow the prompts to create an administrator user. Assuming you didn't change the default port, browse to [http://localhost:1337/](http://localhost:1337/) to begin using `ghostforge` with your new credentials.
## FAQ
**What problem does ghostforge solve?**
TODO
**What's your roadmap?**
TBD
**Why did you select MIT? You use GPLv3 in other projects.**
While GPLv3 still gives you the right to use, modify, and share this code, I know `ghostforge` would be useful to researchers and enthusiasts that need to tailor it to niche, particular, or sensitive use cases. Recognizing this, MIT seemed the best fit.
## Contributing
If you would like to contribute to this project, feel free to submit a pull request or open an issue on GitHub.
This tool was written as part of my coursework for CSC 842 - Security Tool Development at Dakota State University. Consequently, I may choose not to maintain this tool beyond the length of the course, but have selected a license that enables open contributions in any case.
## License
This project is licensed under the MIT License. See the `LICENSE` file for details.