freeCodeCamp.org is a friendly community where you can learn to code for free. Our full-stack web development and machine learning curriculum is completely free and self-paced. We have thousands of interactive coding challenges to help you expand your skills.
This repository is an adaptation of the freecodecamp.org's interactive curriculum to a flutter based mobile application. The mobile app aims to enable a mobile first, offline first user experience for millions of users worldwide who have limited access to internet or a computer.
The official freeCodeCamp mobile app will feature almost all our services, news, forum, podcast, radio and not to forget learn!
Our mobile developers @Nirajn2311 and @Sembauke will be working hard to accomplish this, but we could use your help in the meantime. We would love to hear your opinion and great ideas you can come up with!
Our vision for Q1 2022:
- forum will be available
- early development of learn
- the podcast component will feature multiple great podcasts
- Firstly you will have to install Flutter - https://docs.flutter.dev/get-started/install
- Next setup(or install) an IDE to make developing the app a faster experience. - https://docs.flutter.dev/get-started/editor . It is also recommended to install the available IDE extensions for Flutter and Dart.
- When installing an emulator from
Android studio
we recommend using thePixel 3a XL
andNexus One
for smaller screens. If you use any other IDE, we recommend installing the emulators fromAndroid Studio
. - To start developing the app, follow the steps(excluding the
Create the App
step) as mentioned in this link - https://docs.flutter.dev/get-started/test-drive
- Mac Users with Apple Silicon
Follow the above guide but make the below 2 changes:
- Install the Beta build of Android Studio for Apple Silicon - Android Studio Arctic Fox (2020.3.1) Beta 5 Link for download - https://developer.android.com/studio/archive
- Download the "arm64" version of SDKs
- If "flutter doctor" gives an error about Java not found, then the fix for it is to copy the folder "/Applications/Android Studio Preview.app/Contents/jre/Contents" to "/Applications/Android Studio Preview.app/Contents/jre/jdk/Contents" . Source - flutter/flutter#76215 (comment)
- As a web developer you might be familiar with HTML and CSS. Here is a great comparison between Flutter and CSS styling.
- My emulator froze, when your emulator freezes you can simply go to the AVD Manager select the device the has been frozen and select
Wipe data
. Note that the device must not be running. If you do not know how to open the AVD manager onAndroid Studio
there should be a little icon on the top right looking like this: