Giter VIP home page Giter VIP logo

taleforge's Introduction

TaleForge

๐Ÿ“š Welcome to TaleForge - where stories come alive! Create your own tales using our AI-powered bot or collaborate in real-time with friends. Join our vibrant community and immerse yourself in the world of storytelling! ๐ŸŒŸโœจ #TaleForge #UnleashYourStory"

Authentication

The app leverages Firebase authentication, offering users a seamless and user-friendly registration and login experience. While anonymous usage is an option, creating an account provides enhanced features and benefits.

The registration process includes the security step of receiving a verification code via email, made seamless through the integration of EmailJS API.

Home

On the home page, users gain access to various available story rooms, providing the option to join any of them and filter them.

Solo-Chat

In the solo chat feature, users craft stories alongside our bot, TaleForger, using the OpenAI API for generating lines.

Duo-Chat

In the Duo-Chat feature, users can conveniently access all ongoing chats they're part of, while also having the option to create new ones for others to join.

Every story room has a different design depending on the state of the room:

  • a wizard hat before the title represents the need of the user to send a message
  • the background grey represents the fact that the rooms has not been yet joined by another user
  • the closed tag represents that the number of days set at the beginning has finished
  • the simple designed room means that everything is good

Chat Room

Upon selecting any available story room, users gain access to chat with their designated friend. Engage in storytelling by exchanging one message per day until the countdown concludes. This gradual interaction allows for a captivating storytelling experience, where each message contributes to the evolving narrative between friends.

Profile

Presently, on the profile page, users can access a color picker feature that enables them to personalize the chat by changing its color and change their profile picture / username.

Anonymously Account

When opting for anonymous mode, the user's access is limited to the solo chat and the profile, where a registration form is available. However, if the user chooses to register, all data from the solo chat is saved, ensuring continuity and preservation of their storytelling endeavors within the app.

Foot note:

The above presentation is the version beta, it has some bugs here and there and some side functionality and UI improvements on the way.

taleforge's People

Contributors

poenaruiulian avatar

Stargazers

 avatar

Watchers

 avatar

taleforge's Issues

TASK-4 auth stack

The user has two options:

  • staying anonymous
  • creating an account

In every case, we will send to the database the next object:

{
  username,
  email,
  colorOfChat,
  userID,
  chatWithBotID,
  listOfSoryroomsCreatedTotal,
  listOfStoryroomsCurrentlyOpened,
  listOfStoryroomsFinished,
  dateOfAccount,
  dateOfJoining
}

When the user logs anonymously only the userID, chatWithBotID, and dateOfAccount will be completed. The colorOfChat will be the default.

userID = ID of the document created in Firebase

The lists are lists of IDs:

  • listOfSoryroomsCreatedTotal = all the storyrooms created in total ever
  • listOfStoryroomsCurrentlyOpened = all the storyrooms that the user is taking part
  • listOfStoryroomsFinished = all the storyrooms that the user took part in and they are finished
    dateOfAccount is when he logs anonymously or creates an account.
    dateOfJoining is the date when he creates an account.

dateOfAccount === dateOfJoining only if the user logs in without logging in anonymously first.

TASK-11 handle the anon to user

Handle the transition from to anon and make a collection of statistics where you can see how many users you have (anon and registered) and where you can see how many transitioned.

This task also contains the profile for the anon users.

TASK-20 alerts in the app

Verification alerts for the password before when pressing the get security code and other firebase things:

  • user not in db
  • not a valid email
  • pass don't match

TASK-12 header for with the profile icon

Header with the profile icon so the user can navigate directly the the profile page from any screen, the contents of the page should look different depending on if the user is logged in or anon -> so the task is directly correlated with #13

TASK-1 design figma

Make a design so you can start code the app, if things are necessary on the way, they will be designed then.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.