Skip to content

dhis2designlab/Application-Development-Resource

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Gamified Application-Development-Resource


The project provides an easy-to-follow, and motivational web application development resource. It follows a step-by-step guideline to build web applications.

After completing the project (building the web applications, all or partially), rewards as badges are provided at the bottom of this page. The badges show the completion of the milestones.

Overview


Prerequisites

When working on this repository, if necessary, use the links and content below:

Content

Two crucial steps ( Step 1 and Step 2 ).

  • Step 1: Preparing the environment:
    • Part I: Configuration of the repository,
    • Part II: Configuration for a web-application
  • Step 2: Building the web-applications

Contact

For any questions, changes, or any requests to the repository,
contact via: e-mail: yonatanf@ifi.uio.no, or via Telegram.



Step 1:


This step configures the repository to automate the badge (reward) process.

(needs to be completed before starting step 2)

Step-1 has two parts, start with part I, then part II:

  • Part I: Configuration of the repository (one-time setup) and
  • Part II: Configuration for a web application (before starting on one of the web applications to be done).

After completing Part II, jump to step 2

Part I:


  • First, you might need to join in Github, because you will need the following features from Github: Personal Access Tokens, Github Secrets, and Github Gists.

  • After Signing into your Github account, proceed to forking this repository by clicking the fork button in the upper right hand corner of this page. (can see here about forking), then you will only be working on your forked repository.

    • Enable the workflow in the Actions section of your repository.
    • To start coding on your machine, you could clone your repository to your machine using: git clone <your repository url>
    • You might need git and nodejs installed on your machine.
  • Third, head over to tokens, generate a new token with gist scope

    • After that, COPY the token, e.g a token can look like e5565bedd8ff5cb53a367d9b2dac4602df4b8242. Alt Text

    • After copying the token, head over to Setting of your repository, then click on Secrets.

      In Secrets add a variable called AUTH and paste the token (you can create new, if you forget to copy it).

      Alt Text

Part II:


This part is to be done for every application.

  • Now, before going to the application you want to work on, create a gist file for the application.

    Naming should be based on names in the table name.

    Application html-js-css/level-1 react/level-1 dhis2/level-1 dhis2/evel-2
    Gist file name html_level1.json react_level1.json dhis2_level1.json dhis2_level2.json

    Example for the React Level-1:

    • You would head over to gists and create a gist file for that application, called react_level1.json with a content of {}.

    • After creating the gist file for the application you are working on, do the following important three steps.

      Alt Text

    • Find and copy the id of the created gist file:

    • Now, head over to secrets of your repository and create a new repository secret to hold the id of the gist file.

      Naming should be as names in the table name.

      Application html-js-css/level-1 react/level-1 dhis2/level-1 dhis2/evel-2
      Gist file name html_level1.json react_level1.json dhis2_level1.json dhis2_level2.json
      Secret name HTML_LEVEL1 REACT_LEVEL1 DHIS2_LEVEL1 DHIS2_LEVEL2
    • E.g. While working on the React Level1, call the secret as REACT_LEVEL1 and give it the id of the gist react_level1.json

      In this sample example, the id is 67879aa1f153c6b783303f177fdbaf73. See below for more.

      Alt Text

    • Third and important, edit this readme file, so as to display the badge of the completed application you worked on.

      • Just under the Applications' completion status part in this page below where the badges are displayed, edit the the url of the badges.
  • Remember to do the same three steps for every level you are working on. E.g.: if started React level-2, then create a gist file called react_level2.json, then define a secret called REACT_LEVEL2. The content of the secret is id of the react_level-2.json (found in the url). At last, paste the same id in to the pastecopiedidof-reactlevel-2 at the level-2 badge below.


Step 2: Building the web-applications


In this step-2, it is assumed that Step 1 is completed.

Now, to get started with the web application development, pick a folder (directory) in this repository, go to the directory of the level and follow the readme (steps for that level).

Alt Text

Web Applications' completion status


HTML-CSS-JS

level-1: badge

React:

level-1: badge

DHIS2:

Level-1: badge

level-2: badge