Skip to content

Instantly share code, notes, and snippets.

@zinedkaloc
zinedkaloc / App.js
Last active March 20, 2024 11:04
Real-Time Collaborative Drawing App with React and Agnost
import React, { useState, useEffect } from "react";
import { createClient } from "@agnost/client";
import styled from "styled-components";
import * as fal from "@fal-ai/serverless-client";
fal.config({
// Can also be auto-configured using environment variables:
// Either a single FAL_KEY or a combination of FAL_KEY_ID and FAL_KEY_SECRET
credentials:
"181f3044-5f0b.......65775f5bbcceb424",
@zinedkaloc
zinedkaloc / analyse.py
Created August 15, 2023 20:13
Analyse data.json and generate wordcloud
import json
from collections import Counter
import re
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# Load the data from a file
with open('data.json', 'r') as file:
data = json.load(file)
import { BrowserRouter, Routes, Route } from 'react-router-dom';
import { Home } from './components/Home';
import { Signup } from './components/Signup';
import { Verification } from './components/Verification';
import { Redirect } from './components/Redirect';
import { Login } from './components/Login';
import { PrivateRoute } from './components/PrivateRoute';
import { AuthProvider } from './contexts/Auth';
import { Profile } from './components/Profile';
import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<React.StrictMode>
<App />
import { useNavigate } from 'react-router';
import { useAuth } from '../contexts/Auth';
import { altogic } from '../helpers/altogic';
export function Home() {
// Get current user and signOut function from context
const { user, setUser, setSession } = useAuth();
const navigate = useNavigate();
import { BrowserRouter, Routes, Route } from 'react-router-dom';
import { Home } from './components/Home';
import { Signup } from './components/Signup';
import { Verification } from './components/Verification';
import { Redirect } from './components/Redirect';
import { Login } from './components/Login';
import { PrivateRoute } from './components/PrivateRoute';
import { AuthProvider } from './contexts/Auth';
export default function App() {
import React from 'react';
import { useLocation, Navigate } from 'react-router-dom';
import { useAuth } from '../contexts/Auth';
export function PrivateRoute({ children }) {
const { session } = useAuth();
let location = useLocation();
return session ? (
children
) : (
<Navigate to="/login" state={{ from: location }} replace />
import { useRef, useState } from 'react';
import { useNavigate, Link } from 'react-router-dom';
import { useAuth } from '../contexts/Auth';
import { altogic } from '../helpers/altogic';
export function Login() {
const emailRef = useRef();
const passwordRef = useRef();
const { setUser } = useAuth();
const { setSession } = useAuth();
import React, { useEffect, useState } from 'react';
import { altogic } from '../helpers/altogic';
import { useNavigate } from 'react-router-dom';
import { useAuth } from '../contexts/Auth';
export function Redirect() {
const navigate = useNavigate();
const { session, setSession, setUser } = useAuth();
const [errors, setError] = useState(null);
import { BrowserRouter, Routes, Route } from 'react-router-dom';
import { Home } from './components/Home';
import { Signup } from './components/Signup';
import { Verification } from './components/Verification';
import { Redirect } from './components/Redirect';
import { Login } from './components/Login';
import { AuthProvider } from './contexts/Auth';
export default function App() {
return (