rbao

rbao

Freshcom API is an open source eCommerce backend built using Elixir & Phoenix, it provides a intuitive, developer friendly RESTful API.

Freshcom Dashboard is the admin panel front-end for Freshcom API built using VueJS.

I have previously done many eCommerce project mostly in Ruby on Rails, when a friend recommended me Elixir I immediately fall in love with the language. But there is really not much eCommerce related resource in the community, most of the open source ecom project were abandoned so I decided to roll my own and use it a opportunity to dive deeper into elixir & phoenix.

First line of code was written in Mar 2017, since then I have wrote and re-wrote it many times, its finally at a stage that I feel good enough to share tho still not production yet. This turns out to be a much bigger project than I expected, so I am actively looking for contributors. Any suggestions and code review are also welcome!!

Please check it out, any feedback is appreciated

Showing Posts 1 to 6

aclambda

aclambda

Hi rbao,
I’m very excited about your project!
I’ll check it out and I’ll be back to you soon!
I could have a real business case for Freshcom…
All the best,
Aldo

rbao

rbao OP

Hey Aldo, thanks for checking it out, let me know if you encounter any problem.
If you do have a business case we can definitely chat more in detail.

Roy

Exadra37

Exadra37

Hi @rbao I am trying to play with freshcom_web and freshcom_backend but I don’t find the Get Startded installation/setup in the docs.

I am trying to run it my laptop but it sounds you are hard-coding it to run on AWS or am I misunderstanding something?

freshcom_web/config/config.exs:

config :ex_aws, region: System.get_env("AWS_REGION")

freshcom_web/config/dev.exs:

config :fc_state_storage, adapter: FCStateStorage.DynamoAdapter

By the way congrats for what looks to be a huge endeavor that you are taking alone.

rbao

rbao OP

Hi Exadra37 thanks for taking interest in Freshcom.

To answer your question first, right now Freshcom does a hard dependency with AWS DynamoDB for storing write side state through the DynamoAdapter. The Adapter is very straight forward to write, if you want to use other services instead of AWS, you can simply write your own adapter. There is also a MemoryAdapter for testing.

I have been rewriting a lot of stuff from what was originally the freshcom_api repo (which at the time was close to a beta, but I discovered some major flaw in the design and hence the rewrite). Currently there is still a long way to go before it can actually being used.

If you are looking for a production ready library then this is definitely not there yet. However if you are looking for something you can potentially use in the next 6 months to a year, or just want to play around I can definitely show you how to set it up.

I m in the Elixir Slack Channel, that is probably the best way to reach me. I can even give you a demo if you prefer.

Also there is Avia Commercd which is another Elixir eCom library that is under actively development. You can check them out as well see if it will fits your need better for now.

Exadra37

Exadra37

Hi @rbao thanks for the quick reply.

I discovered first the Avia Commercd one and afterwards I saw the Freshcom one and I loved the fact that is event source based , thus I was looking to play with it to see how it works.

Currently I don’t have a need to use any eCommerce solution, but my background as a software developer started with the Prestashop eCommerce platform and I always had the dream of building a simple one just for fun, but never went through with it.

When I discovered event sourcing I though in doing some personal project to apply that concept but never end-up to dive on it. Now that I discover Elixir I really want to dive in something with event sourcing in the mix, because I think Elixir and event sourcing have born for each other.

I really would love to play with your solution, but I really would like for you to consider it to be agnostic of the cloud being used and to be able to run it locally.

Regarding writing the adapter I can try with my limited Elixir knowlodge, at least will be a good way to learn and do something useful to open source.

I will discover you on slack, but why not a Gitter channel for your project? Gitter integrates directly with a Github repo…

Do you want me to contribute with a docker stack for your project?

rbao

rbao OP

Hi, good to know that, its great that you want to learn ES, elixir and ES is a very nice mix.

To answer your question, right now its just myself working on it since its not at stage where someone can use it right the way I didn’t bother to create a Gitter. I can definitely create one once it get has some tractions, or if there is people willing to contribute.

And yes, eventually I do want to make it agnostic to 3rd party services.

I am not too familiar with docker and how that work, lets chat further on Slack :slight_smile:

— All posts loaded —

Where Next? Top

Trending in Discussions Top

wmnnd
Hey folks, I wanted to share with you a project I’ve been working on for a while: It’s an Open Source (AGPLv3) newsletter tool. Think Ma...
New
axelson
Hi there! :wave: @frigidcode and I (but mostly him) have been running an Elixir Book club, we’re almost done with Designing Elixir Syste...
New
alexslade
Fly’s CEO posted this recently - Turn And Face The Strange · The Fly Blog It says that Fly is going all-in on sprites, which is a worry ...
New
sntran
In my third year of college, around 2010, I found Erlang. A few years later, I found Elixir. I liked the ideas at once: many small proces...
New
Ganna
Hi everyone, I have 8 years of production experience with Erlang/OTP and I’m just starting to get to know Elixir. What would you learn f...
New
johnkirkham
A note on form. Joe Armstrong, co-creator of the Erlang programming language, died in April 2019. What follows is a work of narrative non...
New
gtcode
I’ve been tinkering with Lynx (by José) via hold_ledger. I used AI to write the code, a separate specification, the tests, and the Lean p...
New

Other Trending Topics Top

dominicletz
Hey there, I haven’t seen a list of useful Elixir specific skills for the popular AI tools yet so I’m starting one here with my first. ...
New
mudasobwa
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
KristerV
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
webofbits
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself. My main conc...
#ai
New
OndrejValenta
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly) AI dream has many faces, but general...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews