Getting Started - now-u/now-u-app GitHub Wiki

How do I get started developing for now-u?

First things first - get flutter installed: https://flutter.dev/docs/get-started/install

We are using flutter version 2.0.1 (latest stable release) and are on the stable channel.

Once that's done clone this repo and make sure you are on the dev branch. Assuming all the above steps have been followed run the app (either on an emulator or your own device) and make sure everything works as expected.

Documentation


The current documentation for the dev branch can be accessed here.

To access the documentation the hard way ( but without installing anything ) open project directory and go to docs/api there you will find a lot of folders that contain html pages about each function , class etc . You can open index.html then navigate through the links.

access documentation without installing anything

But if you do want to be able to navigate by search inside the webpage then you have to install the following packages

  • dartdoc (optional) : makes the documentation Why is this useful ? Suppose you someone has committed some new documentation ( inside code ) but didn't remake the html files ( yes , to see changes to the documentation you have to remake it with dartdoc ) . If you have dart doc installed , you can remake the documentation for the codebase you currently have
  • dhttpd (required) : Makes the html pages searchable

So how do you download dartdoc and dhttpd ? Open cmd and type in these commands ( provided flutter is in your PATH )

flutter pub global activate dartdoc
flutter pub global activate dhttpd

you can run dartdoc from the project directory to generate the html files , after which you can manually open each file , but if you want a search function , you will have to install dhttpd like so In the following gif I delete the doc directory and recreate it again with dartdoc command

using dartdoc

To be able to search use dhttpd --path doc/api in the project directory ( or go to api folder and then just do dhttpd ), then go to http://localhost:8080/ in your browser of choice and it will show you the same html files , but now you can search

Using dhttpd
Here is what I did in the above gif :

  • first use dartdoc to generate files
  • then use dhttpd --path doc/api to generate the server
  • then I typed http://localhost:8080/ in the browser

For effective ways to document check their official page

Development Philosophy

Unoriginally we work off the concept of issues. An issue is something we want to change, it can be a critical bug or a nice addition. You can find all the issues here. Issues are then given priorities (in the forms of labels) and assigned to milestones. Milestones are a collection of issues, often with a due date and this often makes up a release cycle.

When you are ready to work on your first issue make sure to follow these steps:

  • On the issue make sure it is added to the app project and set it as in progress
  • Assign your self to the issue
  • Branch off the dev branch and name the new branch either bugfix/ or feature/ (depending on if its a bug or an enhancement)
  • Fix the thing (it helps if you split work into smaller commits)
  • If you have any issues comment on the issue (or message someone directly if you're on slack/email me)
  • Make a pull request from your branch (which contains the fix) into dev. Add the issue that you fixed to the linked issues section of the pull request and any other useful info.