How to Get Started with inKino: A Multiplatform Dart Project

Mar 19, 2024 | Programming

Welcome to the world of inKino, a robust multiplatform Dart application designed for movie enthusiasts. This app allows users to explore movies and showtimes for Finnkino cinemas with cross-platform capabilities that share code between Flutter and the web. Let’s dive into how to set up and contribute to this exciting project!

What is inKino?

inKino is a powerful Dart app that makes it easy to browse movies and showtimes catered specifically for Finnkino cinemas. With a well-structured architecture, it incorporates Redux for state management and boasts a remarkable 40% code sharing between both Flutter and web platforms. The project contains Android and iOS applications built using a single Flutter codebase and a progressive web app created with AngularDart.

As a shining example of multiplatform Dart usage, inKino focuses on seamless development and user experience with automatic testing and an organized folder structure.

Folder Structure

The inKino project is divided into three main folders:

  • core: Contains pure Dart business logic such as API communication, Redux setup, XML parsing, and utility functions.
  • mobile: The Flutter project designed for native Android and iOS apps.
  • web: The AngularDart progressive web app.

For developers looking to work on features, it’s recommended to open both the core and mobile projects in your preferred editor in separate windows for an effective workflow.

Setting Up Your Development Environment

Follow these steps to swiftly set up your development environment:

  1. Install Dart for the web by following the [Dart installation guide](https://webdev.dartlang.org/tools/sdk#install).
  2. Run pub global activate webdev to install webdev.
  3. Choose an IDE, with recommendations like WebStorm or others listed on the Dart website.
  4. Make sure to install the Dart and Flutter plugins for your IDE.
  5. If you prefer a lightweight setup, feel free to use Emacs or Vim.

Building the Project

Renaming the TMDB Configuration File

To access actor images, you need to set up the TMDB API configuration. This is accomplished by renaming a sample file:

cd core/lib/src
mv tmdb_config.dart.sample tmdb_config.dart

If you’d rather be cautious about using terminal commands, you can manually rename tmdb_config.dart.sample to tmdb_config.dart.

Building from Source

Make sure your development environment is ready by confirming all previous setup steps have been completed.

  • To run the web project: Navigate to the root of the web project and run pub get, followed by webdev serve.
  • To run the Flutter project: Open it in your editor, click play, or run flutter run in the terminal.

Troubleshooting Tips

While setting up or running inKino, you may encounter some issues. Here are a few common troubleshooting ideas:

  • Ensure your Dart and Flutter installations are up to date.
  • Double-check that your IDE plugins are properly installed.
  • If you run into build errors, revisit configuration files to ensure they’re set correctly.
  • Check online forums or the project’s GitHub for similar issues and solutions.

For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.

Contributing to inKino

Contributions to the inKino project are highly encouraged! If you’re planning to implement a significant change, remember to create an issue beforehand, so you can coordinate effectively with other contributors.

Conclusion

At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

Stay Informed with the Newest F(x) Insights and Blogs

Tech News and Blog Highlights, Straight to Your Inbox