Thank you for contributing to Little Light! All suggestions and feature requests are welcome, and a lot better if they come with the workforce needed to make it happen.
Here are some tips to make sure your pull request can be merged smoothly:
- If you want to add a feature or make some change to Little Light, consider filing an issue describing your idea first. This will give the Little Light community a chance to discuss the idea, offer suggestions and pointers, and make sure what you're thinking of fits with the style and direction of Little Light. If you want a more free-form chat, join our Discord.
- Resist the temptation to change more than one thing in your PR. Keeping PRs focused on a single change makes them much easier to review and accept. If you want to change multiple things, or clean up/refactor the code, make a new branch and submit those changes as a separate PR.
- Little Light is written in Dart and built in Flutter
- Install Pre-requisites
- Clone
- Get your own API key
- Add API credentials
- Download third party libs
- Run Little Light
- Install Flutter SDK.
- Make sure you're on Flutter's stable channel. To know what channel you're on, run
flutter channel
on Terminal/Bash. - Setup your favorite code editor (I recommend using VS Code)
git clone https://github.com/LittleLightForDestiny/LittleLight
- Goto Bungie
- Click
Create New App
- Enter any application name, and
https://github.com/YourGithubUsername/LittleLight
- For
Oauth Client type
selectConfidential
- Set your redirect url to
luzinha://littelight/login
(or whatever the IP or hostname is of your dev server) - Select all scopes except the Administrate Groups/Clans
- Leave
Origin Header
empty - Copy
assets/_env.example
toassets/_env
and edit it to match your credentials
- Goto Firebase and sign in with a Google account
- Click
Add Project
- Enter any application name, and click continue
- Optional: Disable Google Analytics
- Add an app for Android and/or iOS and/or Web - this depends on what platforms you'll be testing for
- Enter the details:
- Reverse domain name for your package (it doesn't need to be real!)
- Any app nickname
- Download the config file and place it in the following location(s):
- Android:
google-services.json
→./android/app/
- iOS:
GoogleService-Info.plist
→./ios/Runner/
- Web: copy the JS
firebaseConfig
object into./web/google-services.js
- Android:
- Android:
- Add the following line to
./android/local.properties
applicationid=reverse.domain.name.from.step.6.1
- Repeat stps 4-6, adding
.debug
to the end of the reverse domain name, and replacing the oldgoogle-services.json
with the new one
- Add the following line to
- Run
flutter packages get
to download all the libraries used in the project
- Run
flutter run
with a device attached to your computer or an open simulator or - Use your editor command to run the app (F5 in Visual Studio Code)
- You can specify a target device by opening the Command Palette (Ctrl+Shift+P) and type
device
- You can specify a target device by opening the Command Palette (Ctrl+Shift+P) and type