![Hacktoberfest Banner](repo/images/hacktoberfest24.png)
Design a unlimited number of business or information cards about yourself, share a link or QR code to them, print it out, and save other people's cards to your virtual wallet for later. Once you've created a card you can get analytics data on how your cards are getting visited, you can edit your cards as things change, and you can keep cards private so only people with a link to your card can see it.
[!IMPORTANT] Cardie is currently in an open alpha. Things will be rapidly changing and bugs are to be expected.
Happy Hacktoberfest! I hope that you find this project interesting and that some issues offer a good learning experience! Help of any kind would be greatly appreciated.
First, clone this repository using the following command
git clone https://github.com/nfoert/cardie
Then, navigate to that directory and create a new python virtual environment
cd cardie
python3 -m venv .venv
Activate the virtual environment using the command for your system (Linux is used here) and install the required dependencies
source ./.venv/bin/activate
pip install -r requirements.txt
Next, create a django superuser and make and migrate the models
cd cardie
python manage.py createsuperuser
python manage.py makemigrations
python manage.py migrate
Now just run the server using the following command, or run the Start server
task in your Visual Studio Code
python manage.py runserver
Finally, navigate to http://127.0.0.1:8000/admin
and log in using your new administrator account. Create a new Server
object and be sure to configure the ip
to be http://127.0.0.1:8000
.
This depends on what server hosting provider you're using. However, there's a couple environment variables you need to set and there's a run command.
Set the following global environment variables:
DJANGO_ALLOWED_HOSTS
-> ${APP_DOMAIN}
(This works on DigitalOcean, this may not work on every hosting provider)
DJANGO_SETTINGS_MODULE
-> cardie.settings_production
DJANGO_LOG_LEVEL
-> WARNING
STATIC_URL
-> /static/main
SECRET_KEY
-> <your new secret key>
(Generate this using django.core.management.utils.get_random_secret_key()
. If possible you should encrypt this value in your hosting provider.)
DEBUG
-> False
DATABASE_URL
-> ${db.DATABASE_URL}
(This works on DigitalOcean, this may not work on every hosting provider)
There's lots of things that need implemented or changed in this project. Please see TODO.md.
I'd love to see contributions to this project! Please check out the issues page to see what things currently need fixed or added.
Additionally, check TODO.md for a rough todo list of things that need implemented, and the wiki for some information on how to work with some of the existing systems.
When contributing, first fork this repository. To ensure you're getting the latest development changes uncheck the Copy the main branch only
option. Then, create a new branch with your change in it, either from the main
branch or the development
branch. Finally, open a pull request which merges into the development
branch. Your changes will be reviewed and merged soon. Thanks for contributing to Cardie!