Satyrn

UX Designer / Front-End Developer
Project Overview
Satyrn is a groundbreaking Large Language Model AI application developed by the C3 Lab at Northwestern University. Its primary objective is to empower a diverse range of users to interact with vast datasets using natural language. By allowing users to query the model in plain language, Satyrn democratizes access to complex information, bridging the gap that might otherwise require domain expertise or assistance from data scientists. In this project overview, I will detail my role in the development of Satyrn, the challenges I encountered, and the valuable contributions made to this innovative endeavor.
Project Objectives
Empowering Users: Satyrn's core mission is to empower users with the ability to gain insights from large datasets without the need for specialized knowledge.
Interactivity: The application provides an intuitive interface for users to engage with data through natural language queries
.Accessibility: Satyrn aims to make complex information accessible to a wide audience.
My Role
As a key contributor to the project, my responsibilities included:
User Experience Design: I was entrusted with designing the user experience (UX) for Satyrn. This involved creating intuitive interfaces that allowed users to interact effortlessly with the application.

Front-End Development: I spearheaded the development of the front-end of Satyrn. Working collaboratively with a team of PhD candidates and students, I transformed UX designs into a fully functional front-end that seamlessly interfaced with the back-end API.

Project Leadership: In a role that required versatility, I played a leadership role in steering the development of the user-facing aspects of the application. I coordinated the design process, facilitated communication within the team, and ensured the successful realization of the user interface.
The Process
To achieve these objectives, this is the process I followed:
Research: I conducted in-depth research into the project's goals and user requirements, laying the foundation for the design phase.

User Stories: I crafted user stories to capture specific user interactions and scenarios, ensuring that the application met the needs of its intended audience.:

User Flows: Collaborating closely with the team, I created comprehensive user flows that guided the development of user interfaces.

Prototyping
: From initial sketches to interactive prototypes, I iteratively designed the interfaces necessary for users to interact with Satyrn's APIs.

Front-End Development
: Leveraging React.js, I transformed approved designs into a functional front-end, bridging the gap between users and the back-end, which was powered by Flask.

Collaboration: I used Git and GitHub for seamless collaboration with the team. Regular testing and iterative refinement were vital to the development process.
Zoomed Image
Challenges Faced
During the project, I encountered and overcame several challenges:
Integrating Flask and React:
While experienced with Flask and React individually, integrating both technologies posed unique challenges, which I addressed successfully.

Data Consistency:
Ensuring that data requested from the front-end matched the responses from the back-end APIs required careful attention.

Rendering Solutions:
I developed innovative solutions for rendering information received from API calls.

CORS Handling:
Overcoming issues related to Cross-Origin Resource Sharing (CORS) in the Flask back-end was a learning experience that broadened my skillset.
Conclusion
My contributions to Satyrn transformed it into a functional, user-friendly application. We achieved our primary objective of providing Satyrn with an interface for demonstration to potential collaborators and investors. I'm hopeful that the project will continue to evolve, eventually becoming accessible to the public.
Towards the end of my collaboration with the C3 Lab, we initiated work on a complementary project called Tytan, focused on data import and configuration for Satyrn. While the project couldn't be completed due to time constraints, there is optimism on both sides for future funding and my continued involvement.
Acknowledgements
I extend my gratitude to the following individuals who played pivotal roles in this project:

Kristian Hammond: For his leadership, guidance, and support.
Harper Pack
: For facilitating team coordination and providing valuable resources.
Cameron Barrie
: For being a dedicated collaborator, helping troubleshoot, and working towards our goals.
Shubham Shahi: For her contributions to design, user research, and continuous feedback.

I'm also thankful to the entire team for their teamwork, passion, and camaraderie, making this project an enriching and rewarding experience.
Below is an embedded version of the Figma design prototype of the application. For best results, click the button in the top right to go full-screen.