GithubHelp home page GithubHelp logo

swacedigital / moore Goto Github PK

View Code? Open in Web Editor NEW

This project forked from utnkar/moore

0.0 1.0 0.0 4.9 MB

Project Moore: a Wagtail/Django based web-application for the UTN IT infrastructure

Home Page: https://utn.se

License: GNU Affero General Public License v3.0

Dockerfile 0.01% Shell 0.07% Python 73.03% HTML 9.66% JavaScript 1.26% CSS 15.97%

moore's Introduction

Project Moore

Build Status Coverage Status

Project Moore is a replacement for many of the UTN web applications. Built using Wagtail and the Django framework, Project Moore intends to replace obfuscated custom applications. This is why this project keeps a high regard to programming practice and documentation.

Any questions about the project can be send to the UTN system administrator.

Before contributing please read through our contribution guidelines.

Getting Started - Virtual Environment

To get started with Project Moore, follow these instructions to set up a development environment:

  1. Install Python 3, at least version 3.5 or up.
  2. Install the following python packages:
    • python3-venv
    • python3-dev
  3. Clone the repository.
  4. Run source ./source_me.sh to create a virtual environment.
  5. Run pip install --upgrade pip to make sure that pip is running the latest version
  6. Run pip install -r dev-requirements.txt
  7. Use cd src to enter the website directory.
  8. Run ./manage.py migrate to initialize the database.
  9. Run ./manage.py createsuperuser to create an admin user.

During development, you can run a test web server using ./manage.py runserver.

Getting Started - Docker

If you can use Docker, there is an alternative way to get your development environment all set up:

  1. Clone the repository.
  2. Copy .env-template to .env and fill in the environments.
  3. Run docker-compose up create and start the docker instance
  4. Run docker exec -it moore python src/manage.py migrate to initialize the database
  5. Run docker exec -it moore python src/ createsuperuser to create an admin user.

The Moore application is now available on http://localhost:8000 and can be started and stopped using docker-compose up -d and docker-compose stop (the -d flag starts the instance in the background).

Documentation

Documentation for Project Moore is split up into two parts. All documentation regarding Project Moore's code base is located within the code. Like the rest of the UTN infrastructure, a global overview of the application is documented on docs.utn.se

Testing

All code in this repository is tested in two ways: we use Django test suites and we run the flake8 style enforcer. Together they can promote clean and good code.

These tests are run automatically using Travis CI. If, however, you want to run these tests locally you can run the following commands in the project root directory:

  • ./src/manage.py test src - to test with our Django test suites
  • flake8 src - to run the flake8 style enforcer

Translating

Project Moore intends to be multilingual. The web application is available in both Swedish and English. Whenever any translatable text is added or changed it should be translated using translation files.

Within Project Moore we use American English.

To create translations for an app:

  1. cd src/<appname>
  2. ../manage.py makemessages -l sv
  3. This will create or update the files under src/<appname>/locale/.
  4. Use poedit (or your favourite tool -- please do not use a plain text editor since those cannot handle all the subtleties) to fix the translations.
  5. ../manage.py compilemessages

License

AGPL-v2.0, unless a different, usually external, license is provided within a folder or file.

moore's People

Contributors

dakaza98 avatar dekker1 avatar dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar falapen avatar furedal avatar helienzo avatar johan-mattias avatar jsnider avatar skuldran avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.