Distributed Research Writing Tool

Inspiration

After trying all the features, I picked the KV-store, NATS-messaging and HTTP-fetch to make a Distributed Research Collaboration Tool - DR Write. Many similar tools are full of advertisements or missing team collaboration feature, this one is open source, easy to deploy yourself, and most important -- designed for age of A.I. content generation.

What it does

It speed up essay writing, and enable students to finish their homework in an minutes.

  1. start a team and share the unique name with classmates.
  2. create some folder for your topic, let it search journal articles for you by keyword ideas.
  3. at least create one folder, otherwise the search and automation won't work.
  4. it collect the related articles in our Dr Write app and organize in folders. ** cloudflare may block this API as it posts/uploads larger content. But no harm, just cannot persist the journal history.
  5. get A.I. writing prompts, so you can copy and paste to any A.I. tools and let it finish the paragraph.
  6. check if the content make sense and copy summarized content to your homework, add the inline citiations. (We already prepared an easy to use button.)
  7. copy the A.P.A. citations from Dr Write, as ChatGPT will never give correct citations. *** GPT always give deepfake citations of articles never exists! That's why you shall search the journals and guide it to write.

How we built it

We use Smithy to generate interfaces, use Rust to build WASM, deploy via cosmo cli tools. During the development, we also tried cross-actor calls, SQL DB connections, NATS messaging, etc. Nearly all feature of cosmo.

Challenges we ran into

The ability to deploy from our desktops are great, but may be due to physical distance, the overall round trip may easily cause timeout. Especially when connect to another SQL db. That's why I only use KeyValue store for everything.

WASM has the advantage of secure sandboxed features, but if need any API integration, we need to reimplement from basic HTTP features and no existing libraries.

Accomplishments that we're proud of

For the challenges, we tested using NATS to trigger a separated application to fetch data. These "inter-constellation" ability will be useful for large application. Similarly, I tested interlinking actors using shared interface, which allow fine controlled micro services and each managed by respective departments. Overall, we made something useful for everyone that need to research and write reports/eassys.

What we learned

We still enjoy learn the new language Rust and new platform Cosmonic, especially the tool will be useful for many students . We also learned the progress management, instead of stick to one idea, we quickly switch to something feasible in a few days and still have great impact. I learned Rust, a new programming language too.

What's next for Dr Write

We would like to add HTML and PDF parsing, which store the full text articles for A.I. prompt generations.

Built With

Share this project:

Updates