Skip to content

Instantly share code, notes, and snippets.

View apackin's full-sized avatar

Assaf Packin apackin

View GitHub Profile
@apackin
apackin / EULA.md
Last active November 27, 2025 02:28

Lift & Learn End User License Agreement (EULA)

Last updated: November 26, 2025

Welcome to Lift & Learn (“App”). By creating an account or using the App, you agree to this EULA. If you do not agree, do not use the App.

1. Who may use the App

  • You must be at least 18 years old and be approved to join the community by the founder Elon Packin.

2. License

@apackin
apackin / Privacy.md
Last active November 27, 2025 02:28

Lift & Learn Privacy Policy

Last updated: November 25, 2025

Lift & Learn (the “App”) helps teams share workouts and learning updates. This policy explains what we collect, why we collect it, and how you can control your data.

Information We Collect

  • Account & Profile: Email address, display name, optional phone number, and avatar. Managed in Supabase profiles.
  • App Content: Posts, replies, messages/DMs, channel messages, reactions/emojis, goals, weekly stats, and any media you upload (photos/videos are stored via Supabase storage).
  • Team & Membership Data: Team memberships and roles; channel and DM participation.
import 'package:gql_exec/gql_exec.dart';
import "package:async/async.dart";
import 'package:gql/ast.dart';
import 'package:gql_dio_link/gql_dio_link.dart';
import 'package:gql_exec/gql_exec.dart' as gql_exec;
import 'package:gql_dio_link/gql_dio_link.dart';
/// A handler of Link Exceptions.
@apackin
apackin / App.jsx
Created July 17, 2020 19:15
App with useImperativeHandle
function App() {
const [text, setText] = useState("Fun");
const fancyRef = useRef();
const submitButton = () => {
setText(fancyRef.current.value);
};
return (
<div id="App">
@apackin
apackin / FancyTextSubmit.jsx
Last active July 17, 2020 19:28
FancyTextSubmit with input refocus
function FancyTextSubmit() {
const inputRef = useRef(null);
const onButtonClick = () => {
// `current` points to the mounted text input element
inputRef.current.focus();
};
return (
<div>
<input ref={inputRef} type="text" />
<button onClick={onButtonClick}>Focus the input</button>
@apackin
apackin / FancyTextSubmit.jsx
Last active July 17, 2020 18:48
FancyTextSubmit with forwardRef
const FancyTextSubmit = forwardRef(({ onClick }, ref) => (
<div>
<input ref={ref} type="text" />
<button onClick={onClick}>Submit</button>
</div>
));
@apackin
apackin / App.jsx
Last active July 17, 2020 18:34
App using forwardRef for FancyTextSubmit
function App() {
const [text, setText] = useState("Fun");
const fancyTextRef = useRef();
const submitButton = () => {
setText(fancyTextRef.current.value);
};
return (
<div id="App">
@apackin
apackin / FancyTextSubmit.jsx
Created July 17, 2020 18:25
FancyTextSubmit Basic
const FancyTextSubmit = () => (
<div>
<input type="text"/>
<button onClick={onClick}>Submit</button>
</div>
);
@apackin
apackin / cloudSettings
Last active February 25, 2021 00:12
VS code config: TypeScript + Php (PSalm) setup
{"lastUpload":"2021-02-25T00:12:27.745Z","extensionVersion":"v3.4.3"}
@apackin
apackin / Node.md
Created January 18, 2016 20:27
Node.js

Node.js

"A run time environment"

Node allows us to run javascript on OS instead of browser We need a server to create a website or webapp

###Server A program running on a computer somewhere that can communicate with clients

##Modules