13 | {error} 14 |
15 | )} 16 | {message && ( 17 |18 | {message} 19 |
20 | )} 21 | > 22 | ) 23 | } -------------------------------------------------------------------------------- /app/_examples/server-component/page.tsx: -------------------------------------------------------------------------------- 1 | // TODO: Duplicate or move this file outside the `_examples` folder to make it a route 2 | 3 | import { createServerComponentClient } from '@supabase/auth-helpers-nextjs' 4 | import { cookies } from 'next/headers' 5 | 6 | export const dynamic = 'force-dynamic' 7 | 8 | export default async function ServerComponent() { 9 | // Create a Supabase client configured to use cookies 10 | const supabase = createServerComponentClient({ cookies }) 11 | 12 | const { data: todos } = await supabase.from('todos').select() 13 | 14 | return{JSON.stringify(todos, null, 2)}
15 | }
16 |
--------------------------------------------------------------------------------
/ios/MediarAI/Constants.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Constants.swift
3 | // MediarAI
4 | //
5 | // Created by Louis AB on 01/09/2023.
6 | //
7 |
8 | import Foundation
9 |
10 | public enum Constants {
11 | static let supabaseUrl = "https://zfjdysuchblioghfuluq.supabase.co"
12 | static let supabaseKey =
13 | "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InpmamR5c3VjaGJsaW9naGZ1bHVxIiwicm9sZSI6ImFub24iLCJpYXQiOjE2OTAyMjAxNzMsImV4cCI6MjAwNTc5NjE3M30.AmjJc-va_Ohm3EdNkc9sq_OiFImrdb5S4LWWVyP0t_M"
14 | static let metriportKey =
15 | "M25CbWhBVFhCNkRTeUt4XzhTM0h2Ojg2YWY5ZGIzLWZlMzgtNDQ2OS05MzVmLWFmNGU3NzU3OWE3MQ"
16 | }
17 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # next.js
12 | /.next/
13 | /out/
14 |
15 | # production
16 | /build
17 |
18 | # misc
19 | .DS_Store
20 | *.pem
21 |
22 | # debug
23 | npm-debug.log*
24 | yarn-debug.log*
25 | yarn-error.log*
26 |
27 | # local env files
28 | .env.local
29 | .env.development.local
30 | .env.test.local
31 | .env.production.local
32 |
33 | # vercel
34 | .vercel
35 |
36 | # editors
37 | .vscode
38 |
39 |
40 |
41 | # Jupyter hacks
42 | *.ipynb
43 |
44 | *.csv
45 |
46 |
--------------------------------------------------------------------------------
/app/dashboard/SaveTimezone.tsx:
--------------------------------------------------------------------------------
1 | 'use client'
2 |
3 | import React, { useEffect } from 'react';
4 |
5 | interface SaveTimezoneProps {
6 | saveUserTimezoneServer: (userId: string, timezone: string) => Promise{JSON.stringify(todos, null, 2)}
24 | }
25 |
--------------------------------------------------------------------------------
/app/api/completion/route.ts:
--------------------------------------------------------------------------------
1 | import { AnthropicStream, StreamingTextResponse } from 'ai'
2 |
3 |
4 | export const runtime = 'edge'
5 |
6 | export async function POST(req: Request) {
7 | const { prompt } = await req.json()
8 |
9 | const response = await fetch('https://api.anthropic.com/v1/complete', {
10 | method: 'POST',
11 | headers: {
12 | 'Content-Type': 'application/json',
13 | 'x-api-key': process.env.ANTHROPIC_API_KEY!
14 | },
15 | body: JSON.stringify({
16 | prompt: prompt,
17 | model: 'claude-2',
18 | max_tokens_to_sample: 1000,
19 | stream: true
20 | })
21 | })
22 |
23 |
24 | const stream = AnthropicStream(response)
25 |
26 | // Respond with the stream
27 | return new StreamingTextResponse(stream)
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/app/dev/page.tsx:
--------------------------------------------------------------------------------
1 | export default function Home() {
2 |
3 | return (
4 | 9 | Want to access the private beta API that provides the OpenAI-like multimodal mind-body models? 10 |
11 |12 | Reach out at louis@mediar.ai 13 |
14 |21 | Setting a goal will allow Mediar to personalize its behavior to help you get closer to your goal. 🎯🚀 22 |
23 |21 | Note: You will need to install TestFlight from the App Store first. 22 |
23 |28 | Biohacker subscription active
29 |30 | You can skip this step if you don't use Telegram and use WhatsApp instead. 31 |
32 |25 | One health assistant for all your wearables in Telegram 26 |
27 |28 | Send pictures or texts of events in your life to Mediar AI in Telegram and get health insights daily. 29 |
30 |To get the most out of Mediar, connect your health apps and wearables. This will allow us to provide personalized insights based on your health data.
19 |For Apple Health, you'll need to install our iOS app.
22 |Connect your health/fitness accounts to get your health data.
29 |18 | One health assistant for all your wearables 19 |
20 |21 | Mediar is your health's copilot. It provides personalized insights based on wearable data, your workout, mood, nutrition, or anything else. 22 | {/* Mediar is an AI assistant that analyzes multi-modal health data from wearables and user input, then delivers personalized insights and recommendations through Telegram to optimize wellbeing and performance. */} 23 | {/* Combine your brain activity data from Neurosity and/or biometric data from wearables like Oura ring for AI-driven insights, enhancing focus, reducing anxiety, and promoting optimal health. */} 24 |
25 |43 | How does it work? 44 |
45 | 46 | 47 | 48 |
3 |
4 |
5 |
6 |
51 | You can skip this step if you don't use Telegram and use WhatsApp instead. 52 |
53 |
40 | Protected page
41 |
42 |
43 | Hey, {user.email}! {' '}
44 |
47 |
48 | 70 | The fastest way to get started building apps with{' '} 71 | Supabase and Next.js 72 |
73 | 74 |Follow these steps to get started:
67 |42 | Press{" "} 43 | 44 | ⌘J 45 | 46 |
47 |