Welcome to Binance Sly (binance_sly)! This README.md file provides an overview of the project, its requirements, challenges faced, used packages, and opportunities for future enhancements. Let's dive in! 🚀
The goal of this assessment was to design a user interface using the provided design in Figma and consume the Binance WebSockets API to create an interactive UI. Although live data from Binance couldn't be used due to account limitations, the project simulates the experience.
The UI includes features such as candlestick charts, order books, and real-time data updates. The Flutter framework was utilized to build the application, and various packages were employed to enhance the functionality and user experience.
The screen recording was taken with a simulator, an iPhone 14 Pro Max
Screen Record
The design for the project can be found in this Figma link. It serves as the blueprint for the UI and guides the implementation process.
During the development process, a few challenges were encountered:
- Limited access to the Binance account prevented the use of live data from the order book. However, the functionality was mimicked to provide a similar experience.
- Time constraints posed a challenge in implementing all desired features and enhancements.
The following Flutter packages were utilized in this project:
- Provider: A state management package to efficiently manage and update application state.
- Dio: A powerful HTTP client for making API requests and handling network operations.
- Candlesticks: A package for rendering beautiful candlestick charts, allowing visualization of financial market data.
- flutter_screenutil: A package for adapting the UI to different screen sizes and resolutions, providing a responsive layout.
- gap: A utility package for adding custom spacing and gaps between widgets.
- flutter_svg: A package for rendering SVG images, enabling the use of scalable vector graphics in the UI.
- web_socket_channel: A package for establishing WebSocket connections and consuming real-time data from server-side APIs.
- simple_logger: A lightweight logging package for printing informative logs during development and debugging.
- flutter_animate: A package for adding delightful animations and transitions to the UI, enhancing the overall user experience.
- flutter_native_splash: A package for easily configuring and generating native splash screens for different platforms.
- dropdown_button2: A customized version of the Flutter dropdown button widget, providing additional features and flexibility.
Although the assessment project has been completed, there are still opportunities to improve and expand its functionality:
- Adding more screens and features to provide a comprehensive trading experience.
- Extending the application to other platforms such as desktop and web, reaching a wider user base.
- Incorporating live data from the Binance API to display real-time market information.
- Enhancing performance and optimizing the application for better efficiency.
- Implementing additional security measures and authentication protocols for user accounts.
Contributions to this project are more than welcome! If you have any ideas, improvements, or bug fixes, feel free to submit a pull request. Let's collaborate and make this project even better together! 🤝
If you have any questions, feedback, or suggestions, please feel free to reach out:
- Email: [email protected]
- Twitter: @jeremiahseun
- GitHub: jeremiahseun
Happy coding and Fluttering! 😊✨