You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+3-2Lines changed: 3 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -63,8 +63,9 @@ AppFlowy is the AI workspace where you achieve more without losing control of yo
63
63
64
64
## Getting Started with development
65
65
66
-
Please view the [documentation](https://docs.appflowy.io/docs/documentation/appflowy/from-source) for OS specific
67
-
development instructions
66
+
Please view our comprehensive [build from source guide](doc/BUILD_FROM_SOURCE.md) for detailed OS-specific development instructions, including desktop and mobile platform support.
67
+
68
+
For additional documentation, visit [docs.appflowy.io](https://docs.appflowy.io/docs/documentation/appflowy/from-source).
The iOS app will be built and available in `frontend/appflowy_flutter/build/ios/`.
78
+
79
+
### Android
80
+
81
+
#### Prerequisites
82
+
83
+
**All Platforms:**
84
+
-[Android NDK](https://developer.android.com/ndk/downloads/) version 24
85
+
- cargo-ndk: `cargo install cargo-ndk`
86
+
87
+
#### Detailed Setup Instructions
88
+
89
+
For comprehensive Android build setup including Windows support, please refer to the [Android-specific build guide](../frontend/appflowy_flutter/android/README.md) which covers:
90
+
91
+
- Platform-specific environment variable setup
92
+
- Cargo configuration for all operating systems
93
+
- NDK 24 clang fixes
94
+
- Path configuration
95
+
- Troubleshooting common issues
96
+
97
+
#### Build Steps
98
+
```bash
99
+
cd frontend
100
+
cargo make appflowy-android
101
+
```
102
+
103
+
The Android APK will be built and available in `frontend/appflowy_flutter/build/app/outputs/flutter-apk/`.
104
+
105
+
## Development Builds
106
+
107
+
For faster development builds without optimizations:
108
+
109
+
### Desktop Development
110
+
```bash
111
+
cd frontend
112
+
cargo make appflowy-dev # Uses platform-specific aliases
113
+
```
114
+
115
+
### Mobile Development
116
+
```bash
117
+
# iOS development build
118
+
cd frontend
119
+
cargo make appflowy-ios-dev
120
+
121
+
# Android development build
122
+
cd frontend
123
+
cargo make appflowy-android-dev
124
+
```
125
+
126
+
## Troubleshooting
127
+
128
+
### Common Issues
129
+
130
+
1.**Flutter Doctor Issues**: Run `flutter doctor` to check for missing dependencies
131
+
2.**Rust Version**: Ensure you're using Rust 1.70 or later
132
+
3.**Path Issues**: Make sure all tools are in your system PATH
133
+
4.**NDK Issues**: Verify ANDROID_NDK_HOME is set correctly
134
+
135
+
### Platform-Specific Issues
136
+
137
+
#### Windows
138
+
- Ensure Visual Studio C++ tools are installed
139
+
- Check that vcpkg is properly configured
140
+
- Use PowerShell or Command Prompt, not Git Bash for building
141
+
142
+
#### macOS
143
+
- Ensure Xcode Command Line Tools are installed
144
+
- For iOS builds, you need a full Xcode installation
145
+
146
+
#### Linux
147
+
- Install all required system dependencies
148
+
- Check that pkg-config can find required libraries
149
+
150
+
### Getting Help
151
+
152
+
- Check the [AppFlowy Documentation](https://docs.appflowy.io/)
153
+
- Join our [Discord](https://discord.gg/9Q2xaN37tV) for community support
154
+
- Report issues on [GitHub](https://github.com/AppFlowy-IO/AppFlowy/issues)
155
+
156
+
## Additional Resources
157
+
158
+
-[AppFlowy Development Guide](https://docs.appflowy.io/docs/documentation/appflowy/from-source)
Copy file name to clipboardExpand all lines: frontend/appflowy_flutter/README.md
+5-1Lines changed: 5 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,7 +32,11 @@ To contribute to `AppFlowy_Flutter` codebase specifically (coding contribution)
32
32
33
33
### What OS should I use for development?
34
34
35
-
We support all OS for Development i.e. Linux, MacOS and Windows. However, most of us promote macOS and Linux over Windows. We have detailed [docs](https://docs.appflowy.io/docs/documentation/appflowy/from-source/environment-setup) on how to setup `AppFlowy_Flutter` on your local system respectively per operating system.
35
+
We support all OS for Development i.e. Linux, macOS and Windows. We have detailed documentation on how to setup `AppFlowy_Flutter` on your local system for each operating system:
36
+
37
+
-[Build from Source Guide](../../doc/BUILD_FROM_SOURCE.md) - Comprehensive setup instructions for all platforms
38
+
-[Android-specific Guide](android/README.md) - Detailed Android build instructions including Windows support
This code needs to be written in ~/.cargo/config, this helps cargo know where to locate the android tools(linker and archiver).
22
-
**NB**Keep in mind just replace 'user' with your own user name. Or just point it to the location of where you put the NDK.
33
+
This code needs to be written in `~/.cargo/config` (Linux/macOS) or `%USERPROFILE%\.cargo\config` (Windows). This helps cargo know where to locate the android tools(linker and archiver).
34
+
**NB**Replace the paths with your actual NDK installation location.
23
35
36
+
**Linux/macOS:**
24
37
```toml
25
38
[target.aarch64-linux-android]
26
39
ar = "/home/user/Android/Sdk/ndk/24.0.8215888/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-ar"
@@ -39,26 +52,68 @@ ar = "/home/user/Android/Sdk/ndk/24.0.8215888/toolchains/llvm/prebuilt/linux-x86
After creating the file, copy it into four different folders: `aarch64`, `arm`, `i386` and `x86_64`.
88
+
We have to do this so the Android NDK can find clang on our system. If we used NDK 22 we wouldn't have to do this process, though using NDK v22 will not give us a lot of features to work with.
53
89
This GitHub [issue](https://github.com/fzyzcjy/flutter_rust_bridge/issues/419) explains the reason why we are doing this.
54
90
55
91
---
56
92
57
-
**Android NDK**
93
+
**Android NDK Path Setup**
94
+
95
+
After installing the NDK tools for Android you should add the NDK path to your system PATH.
58
96
59
-
After installing the NDK tools for android you should export the PATH to your config file
60
-
(.vimrc, .zshrc, .profile, .bashrc file), That way it can be found.
97
+
**Linux/macOS:**
98
+
Add to your shell config file (.bashrc, .zshrc, .profile):
99
+
```bash
100
+
export PATH=$PATH:~/Android/Sdk/ndk/24.0.8215888
101
+
```
102
+
103
+
**Windows:**
104
+
Add to your system PATH environment variable or add to PowerShell profile:
0 commit comments