Skip to content

repository for most of Open edx public cookiecutters.

License

Notifications You must be signed in to change notification settings

platform45/edx-cookiecutters

 
 

Repository files navigation

edx-cookiecutters

This repository holds most of the Open edX public cookiecutters.

Using the cookiecutters

Available cookiecutters

cookiecutter-django-ida
for creating new independently deployable apps (IDAs).
cookiecutter-django-app
for creating reusable Django packages (installable apps).
cookiecutter-python-library
for creating a Python package that follows Open edX standards.
cookiecutter-xblock
for creating a XBlock repository as well as a Dockerfile for building and running your XBlock in the xblock-sdk workbench.

Using a cookiecutter

These instructions assume you have cloned this repository and are currently in its head dir. You will need a virtualenv for running the cookiecutter. You can discard it once the cookiecutter has made your new repo.

Commands:

$ make requirements  # from inside edx-cookiecutter repo
# Replace <OUTPUT-DIRECTORY> with the base directory; your new directory will go inside.
$ cookiecutter -o <OUTPUT-DIRECTORY> <COOKIECUTTER-NAME>

TODOs after creating cookiecutter

  • Modify project README
  • Modify project docs/decisions/0001-purpose-of-this-repo.rst ADR

Updating cookiecutters

If you are modifying and debugging cookiecutters on a local device, please see "Local Debugging of the layered cookiecutters" section below.

Cookiecutters using layered apporach

  • cookiecutter-python-library
  • cookiecutter-django-app
  • cookiecutter-django-ida
  • cookiecutter-xblock

If you are updating above cookiecutters, please see docs/decisions/0003-layered-cookiecutter.rst and docs/how_tos/modifying_layered_cookiecutter.rst

Local Debugging of the layered cookiecutters

To ensure that the layered cookiecutters pull from your local code, instead of GitHub, run cookiecutter like:

$ make cookiecutter-<TEMPLATE-NAME>

eg:

$ make cookiecutter-django-app
$ make cookiecutter-django-ida
$ make cookiecutter-python-library
$ make cookiecutter-xblock

Decisions

See docs/decisions/0003-layered-cookiecutter.rst for details on layering cookiecutters to share boilerplate files.

Community

Contributing

Contributions are very welcome. Tests can be run with tox. Please ensure the coverage at least stays the same before you submit a pull request.

License

The code in this repository is licensed under the Apache Software License 2.0 unless otherwise noted.

Please see LICENSE.txt for details.

Reporting Security Issues

Please do not report security issues in public. Please email [email protected].

Getting Help

If you're having trouble, we have discussion forums at https://discuss.openedx.org where you can connect with others in the community.

Our real-time conversations are on Slack. You can request a Slack invitation, then join our community Slack workspace.

For more information about these options, see the Getting Help page.

About

repository for most of Open edx public cookiecutters.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 69.7%
  • Makefile 20.1%
  • Batchfile 5.1%
  • Dockerfile 2.3%
  • Shell 1.6%
  • HTML 0.6%
  • Other 0.6%