Skip to content

Project Breakdown and Intent

David Bouwkamp edited this page Jan 25, 2024 · 1 revision

Project Breakdown and Intent

Overview

The DINGUS project is a specialized backend system tailored for efficient handling and processing of RFID data. Our objective is to provide a robust and scalable solution that integrates seamlessly with RFID technology, offering a streamlined experience for both developers and end-users.

Purpose

The project is designed to:

  • Efficiently Process Wild Apricot Contact Data: Synchronize local database with WA DB prioritizing user privacy, security, and fault tolerance
  • Facilitate User-Friendly Server Management Interfaces: Serve web-ui for server configuration, particularly focusing on ease of use and clarity with the aid of Bootstrap.

Technology Stack

Technologies used in or by the project:

  • Golang (Go): For its efficient performance in backend development.
  • Gin: A HTTP web framework used for building APIs.
  • SQLite Database: For lightweight, fast, and reliable data storage.
  • Logrus and Loki: For advanced logging capabilities, ensuring robust debugging and system monitoring.
  • Grafana: For real-time data visualization and monitoring.
  • Wild Apricot API: To ingest large volumes of contact data and ensure database synchronization with WA.
  • Wild Apricot Webhooks: To reflect real-time contact data change events seamlessly.
  • TLS (Transport Layer Security): Ensuring secure data transmission.
  • Wild Apricot OAuth 2.0 SSO: For secure single sign-on capabilities, enhancing user authentication and access control.

Challenges and Solutions

High-Volume Data Synchronization

  • Challenge: Effectively handling large volumes of RFID data.
  • Solution: Utilizing Golang's concurrency model and SQLite's efficient data storage capabilities.

Seamless System Integration

  • Challenge: Ensuring smooth integration with various front-end platforms and external APIs.
  • Solution: Leveraging Gin for building flexible and scalable APIs, and integrating with the Wild Apricot API for comprehensive contact data synchronization.

Secure Data Transmission and Authentication

  • Challenge: Maintaining high standards of data security and user authentication.
  • Solution: Implementing TLS for secure data transmission and OAuth 2.0 SSO for reliable user authentication.

Future Roadmap

  • Advanced Analytics: Implementing sophisticated data analysis tools for deeper insights.
  • Extended RFID Device Support: Broadening the range of compatible RFID devices.
  • User Feedback Integration: Continuously adapting and enhancing the project based on user input and community contributions.

Conclusion

DINGUS is dedicated to providing a secure and user-friendly backend solution for makerspace RFID systems. We value the power of open-source development and actively seek contributions and feedback from the developer community and end-users.


Last Updated: 1/25/2024