🐦 A Twitter clone with Remix and Kontenbase

Overview

Writter

A Twitter clone with Remix and Kontenbase. Styled with Chakra UI.

MIT License

Features

What's implemented

  • Landing page
  • Authentication/Authorization
    • Sign up
    • Sign in
    • Sign out
    • Permission of ownership aka authorization
  • Home with timeline of Wreets (Tweets)
  • Link to go to Wreet page
  • View Wreet content page
  • View user profile
  • Create a new Wreet
  • Delete owned Wreet

What's might not implemented

  • Follow other users
  • Filtered Wreet timeline
  • Comment or making a thread in a Wreet
  • Like a Wreet
  • ReWreet (retweet)
  • Bookmark
  • Copy link to Wreet

Tech Stack

  • React + Remix + React Router
    • HTML
    • CSS
    • JavaScript
    • TypeScript
  • Styling options:
    • Chakra UI
    • Stitches + Radix UI + Radix Colors
  • Deployment options:
    • Vercel
  • Extras:
    • Prettier
    • ESLint
    • Cloudflare DNS

Guide

Here are the step by step guide to develop this app. You can also watch the video on YouTube

Backend with Kontenbase

  • Sign in and setup a new Kontenbase Project
  • Know to get API Key from the Settings
  • Know to get API URL
  • Create a new private wreets service and customize it to have:
    • content
    • createdAt
    • createdBy
  • Customize users service to have:
    • handle
    • createdAt
    • createdBy
  • Test to sign up or register new User
  • Test to sign in or login to User
  • Test to create new Wreet
  • Test to get all Wreet
  • Test to get one Wreet by ID
  • Test to delete a Wreet
  • Check Kontenbase Docs
    • Welcome
    • Getting Started
    • SDK

Development with Remix

  • Generate React+Remix app with create-remix
    • npx create-remix@latest
  • Create a GitHub repo and push the repo
  • Setup .env .env.example and Git ignore .env .DS_Store
  • Setup package.json
    • name
    • description
    • license
    • scripts
  • Make sure to install dependencies with npm install
  • Start development server with npm run dev
  • Open up http://localhost:3000
  • Install app dependencies
    • npm install dotenv dayjs invariant remix-auth remix-auth-form @kontenbase/sdk framer-motion @chakra-ui/react @chakra-ui/icons @emotion/react @emotion/styled
  • Install development dependencies
    • npm install -D @types/invariant @typescript-eslint/eslint-plugin @typescript-eslint/parser prettier eslint eslint-config-airbnb eslint-config-prettier eslint-plugin-import" eslint-plugin-jsx-a11y eslint-plugin-react eslint-plugin-react-hooks eslint-plugin-unused-imports
  • Setup ESLint and Prettier config
  • Copy favicons assets and manifest
  • Know that api folder only for @remix-run/vercel
  • Setup chakra-ui.ts config file
  • Setup types
  • Setup components
  • Setup features
  • Setup lib
    • dayjs
    • kontenbase
  • Setup utils
  • Setup services
    • session.server: Cookie session storage with Remix Server
    • auth.server: Authenticator from remix-auth and FormStrategy from remix-auth-form
    • Implement signin and signup with combination of Kontenbase SDK and manual HTTP request (due to the SDK cannot handle server-side call and custom request body).
  • Setup Remix root.
  • Make sure of Remix entry client and server.
  • Setup routes
    • index
    • about
    • signup
    • signin
    • signout
    • home: Timeline of all Wreets
      • Currently not filtered by following users
    • wreet: New Wreet composer
    • $userHandle: user profile
    • $userHandle/$wreetId
      • Single Wreet page
      • Delete an owned Wreet
    • profile: Redirect to authenticated user profile

Deployment with Vercel

After having run the create-remix command and selected "Vercel" as a deployment target, you only need to import your Git repository into Vercel, and it will be deployed.

It is generally recommended to use a Git repository, because future commits will then automatically be deployed by Vercel, through its Git Integration.

If you'd like to avoid using a Git repository, you can also deploy the directory by running Vercel CLI:

npm i -g vercel
vercel
You might also like...

Twitter bot to find what song is playing in a given uploaded twitter video.

Twitter bot to find what song is playing in a given uploaded twitter video.

what-song-is-this Twitter bot to find what song is playing in a given uploaded twitter video. How to setup. yarn install How to run. via npm script ya

Dec 11, 2022

Twitter clone using Nextjs, Tailwind CSS and Firebase

This is a Next.js project bootstrapped with create-next-app. Getting Started First, run the development server: npm run dev # or yarn dev Open http://

Aug 16, 2022

Twitter Clone using next.js and tailwin CSS

This is a Next.js project bootstrapped with create-next-app. Getting Started First, run the development server: npm run dev # or yarn dev Open http://

Dec 26, 2022

Fullstack twitter clone developed with GraphQL and Relay

Fullstack twitter clone developed with GraphQL and Relay

Fullstack twitter clone developed with GraphQL and Relay

Dec 1, 2022

Twitter-Clone (For Learning Purpose) made with Next.js,Firebase,TailwindCss

Twitter-Clone (For Learning Purpose) made with Next.js,Firebase,TailwindCss

Project Name : Twitter-Clone This is a clone of Twitter . This build is for learning purpose only. Technology Used To Build This How it look's Some im

Oct 4, 2022

A social network that simulates a personal blog, where people post "What's on your mind?". Tweteroo is a Twitter clone.

A social network that simulates a personal blog, where people post

Tweteroo About A social network that simulates a personal blog, where people post "What's on your mind?". Tweteroo is a Twitter clone. 🔨 Features ☑️

Apr 13, 2022

Decentralized clone of Twitter.

Decentralized feed app built with GunJS and Svelte Decentralized technologies are the future, but we can already start implementing them today. This a

Aug 30, 2022

LinkedIn-Clone - a LinkedIn clone with firebase, redux and styled components

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: ya

Jan 3, 2022

Framework agnostic CLI tool for routes parsing and generation of a type-safe helper for safe route usage. 🗺️ Remix driver included. 🤟

Framework agnostic CLI tool for routes parsing and generation of a type-safe helper for safe route usage. 🗺️ Remix driver included. 🤟

About routes-gen is a framework agnostic CLI tool for routes parsing and generation of a type-safe helper for safe route usage. Think of it as Prisma,

Jan 2, 2023
Owner
Kontenbase Team
Administrator account of Kontenbase
Kontenbase Team
Remix enables you to build fantastic user experiences for the web and feel happy with the code that got you there. In this workshop, we'll look at some more advanced use cases when building Remix applications.

?? Advanced Remix Workshop Remix enables you to build fantastic user experiences for the web and feel happy with the code that got you there. In this

Frontend Masters 167 Dec 9, 2022
Remix enables you to build fantastic user experiences for the web and feel happy with the code that got you there. Get a jumpstart on Remix with this workshop.

?? Remix Fundamentals Build Better websites with Remix Remix enables you to build fantastic user experiences for the web and feel happy with the code

Frontend Masters 204 Dec 25, 2022
simple-remix-blog is a blog template built using Remix and TailwindCSS. Create your own blog in just a few minutes!

simple-remix-blog is a blog template built using remix.run and TailwindCSS. It supports markdown and MDX for the blog posts. You can clone it and star

José Miguel Álvarez Vañó 8 Dec 8, 2022
The Remix version of the fakebooks app demonstrated on https://remix.run. Check out the CRA version: https://github.com/kentcdodds/fakebooks-cra

Remix Fakebooks App This is a (very) simple implementation of the fakebooks mock app demonstrated on remix.run. There is no database, but there is an

Kent C. Dodds 61 Dec 22, 2022
Remix Stack for deploying to Vercel with remix-auth, Planetscale, Radix UI, TailwindCSS, formatting, linting etc. Written in Typescript.

Remix Synthwave Stack Learn more about Remix Stacks. npx create-remix --template ilangorajagopal/synthwave-stack What's in the stack Vercel deploymen

Ilango 56 Dec 25, 2022
Remix Auth plugin for Twitter OAuth 1.0a

Remix Auth Twitter Remix Auth plugin for Twitter OAuth 1.0a. Supported runtimes Runtime Has Support Node.js ✅ Cloudflare ✅ Demo Try out live demo (sou

na2hiro 13 Dec 31, 2022
Twitter Text Libraries. This code is used at Twitter to tokenize and parse text to meet the expectations for what can be used on the platform.

twitter-text This repository is a collection of libraries and conformance tests to standardize parsing of Tweet text. It synchronizes development, tes

Twitter 2.9k Jan 8, 2023
A Twitter filtered search to only get the live broadcasts hosted on Twitter itself, Built using Vanilla JS and Node.js

Twitter Broadcasts Search A Twitter filtered search to only get the live broadcasts hosted on Twitter itself, Built using Vanilla JS and Node.js. Live

Mohammad Mousad 2 Oct 6, 2022
Clone of a certain microblogging site. Based on Remix Indie Stack.

Microblog No guarantees that any of this works. I'm new at this and experimenting. Built on top of Remix's Indie Stack. Database query organisation mi

Kuldar Kalvik 0 Nov 18, 2022
Fuck Twitter NFTs - Userscript to delete or block all occurances of NFT Users on Twitter

FuckTwitterNFTs Fuck Twitter NFTs - Userscript to delete or block all occurances of NFT Users on Twitter Userscript will by default, attempt to delete

Blumlaut 1 Jan 20, 2022