An open source alternative front-end to Instructables.
Find a file
Kumi cfb81fada1
All checks were successful
Docker CI/CD / Docker Build and Push to Docker Hub (push) Successful in 2m31s
Python Package CI/CD / Publish to PyPI (push) Successful in 1m9s
feat: encode member usernames in URLs and add docstrings
Added URL encoding for member usernames to prevent errors with special characters in profile and Instructables URLs. Improved code readability by including docstrings for route functions, and refined HTML templates to conditionally display member location only if it exists. Updated the project version to 0.3.8.
2024-07-01 15:27:23 +02:00
.forgejo/workflows feat: add Docker CI/CD workflow for automated builds 2024-06-17 19:46:15 +02:00
src/structables feat: encode member usernames in URLs and add docstrings 2024-07-01 15:27:23 +02:00
.env.example Add Docker support 2024-06-17 18:40:34 +03:00
.gitignore Add Docker support 2024-06-17 18:40:34 +03:00
cronjob.txt add cronjob text file 2023-06-03 17:44:44 -04:00
docker-compose-example-dev.yml feat(docker): add dev config and update prod image source 2024-07-01 15:13:34 +02:00
docker-compose-example.yml feat(docker): add dev config and update prod image source 2024-07-01 15:13:34 +02:00
Dockerfile Add Docker support 2024-06-17 18:40:34 +03:00
entrypoint.sh Add Docker support 2024-06-17 18:40:34 +03:00
LICENSE first commit 2023-06-01 17:25:13 -04:00
pyproject.toml feat: encode member usernames in URLs and add docstrings 2024-07-01 15:27:23 +02:00
README.md docs: update reverse proxy configuration path 2024-06-17 19:12:59 +02:00

Structables

An open source alternative front-end to Instructables. This is a fork of snowcatridge10's Indestructables, which itself is a fork of Cobra's Destructables.

Support Private.coffee! Matrix PyPI PyPI - Python Version PyPI - License Latest Git Commit

Instances

URL Provided by Country Comments
structables.private.coffee Private.coffee Austria
structables.bloat.cat Bloat.cat Romania

To add your own instance to this list, please open a pull request or issue.

Opening Issues

If you're having problems using Structables, or if you have ideas or feedback for us, feel free to open an issue in the Private.coffee Git or on Github.

Of course, you can also join our Matrix room to discuss your ideas with us.

Run your own instance

Production: Manual

  1. Create a virtual environment: python3 -m venv venv
  2. Activate the virtual environment: source venv/bin/activate
  3. Install the packages: pip install structables uwsgi
  4. Run uwsgi --plugin python3 --http-socket 0.0.0.0:8002 --module structables.main:app --processes 4 --threads 4
  5. Point your reverse proxy to http://localhost:8002 and (optionally) serve static files from the venv/lib/pythonX.XX/site-packages/structables/static directory
  6. Connect to your instance under your domain

Production: Docker

  1. Copy .env.example to .env and adjust the settings as necessary

  2. Copy docker-compose-example.yml to docker-compose.yml and adjust it as necessary, for example modifying resource limits or changing the port/host configuration

  3. Build and run the Docker container:

    docker-compose up [-d]
    
  4. Point your reverse proxy to http://127.0.0.1:8002 (or your chosen port, if you modified it) and (optionally) serve static files from structables/static

  5. Connect to your instance under your domain

Development

  1. Clone the repository: git clone https://git.private.coffee/privatecoffee/structables.git && cd structables
  2. Create a virtual environment: python3 -m venv venv
  3. Activate the virtual environment: source venv/bin/activate
  4. Install in editable mode: pip install -e .
  5. Run structables
  6. Connect to http://localhost:8002

License

This project, as well as the two projects it is based on, are licensed under the GNU Affero General Public License v3. See the LICENSE file for more information.