Slibro is a story writing platform that supports short and long format stories. Flutter and Appwrite is used to create this amazing cross-platform experience.
Try out the app on Android from here.
To run this from your system, you should have:
Flutter SDK installed and configured on your system.
Setup Appwrite using Docker.
Host the server locally using ngrok.
Under lib
directory, create a secret.dart
file, and add the server URL and Appwrite project ID to it. Example:
class Secrets {
static String hostname = 'https://127b-203-163-244-125.in.ngrok.io/v1';
static String projectID = '6276341092e81e829ab0';
}
Run using the following command:
flutter run
The app now has full-fledged story editor (rich text - markdown), story reader, and story management system (to manage published/unpublished stories and explore other publisher's stories).
Some glimpses of Slibro's user interface are as follows:
The above four screens cover the authentication flow on the app using email/password method. These screens help a user to either create a new account or login using an existing account. Once a user signs up to the app, it navigates to the story creation flow.
These screens help a user to create the first story as a draft in the Slibro app. The user can also publish the story if wanted.
The editor and the reader screens are the most important ones, the editor also has rich text support using Markdown.
The three screens (Home, My Stories, and My Profile) shown above are part of the dashboard of the app, user can navigate to any of these using the Navigation bar accessible from these pages.
Navigation bar has a subtle animation to improve the UX of the app:
Three of the major Appwrite APIs are used:
The following Flutter packages are used to build this app:
Copyright 2022 Souvik Biswas
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.