The topic is about media. We think media is connections between text, image, audio and video. The inspiration we have is enhance these connections, starting from the basic one: text and image.

What it does

Lumin is an artificial image search platform. Users could paste their articles and lumin will automatically find the best pictures which will perfectly match the content of those articles. And lumin could analyze the raw text and hightlight some words which have unique meaning, like terminologies or names. Further more, we are trying to make lumin knows where the picture was taken and shows that in the Google map api and could use voice recognition to convert audio to text.

Through the clever use of existing APIs:

  • Google map
  • Bing Image Search API
  • Bing Text Analytic API
  • Bing Text Entity API
  • Bing Search News API
  • NLTK Stop Word API
  • AWS Rekognition API
  • Exifread API

We have compiled a complex and intelligent simple IDE for media workers.

The knowledge of the media is many discrete. Information related to media manufacturers is often highly fragmented and unstable. For a newcomer to the media (such as a Youtuber who full of embarrassment for his future) Getting the resources in the easiest way is what he need. And our products can help.

How we built it

We set the article content as the main input. But sometimes most of sentences from article are useless to find the picture we want. So we provide the "refine text" input, which we can type the keyword means the direction which we want to "narrow down" the searching scope. And the "refine text" input would also make some influence on the final rank the pictures shows on the result column.

This is a separate project at the front and rear ends.

  • We used Flask as a lightweight Restful service on the back end
  • We used the Vue technology stack on the front end.
  • In between, we use AJAX to interact and render geography, images, and other data.
  • Use gunicore as Python WSGI HTTP Server
  • Use Nginx as a proxy for front-end static resources to ease the burden of gunicore
  • And we used Google Cloud to deploy our program.

Simple deployment scripts can be seen here

What's next for Lumin

In the practical sense of the project:

Our ultimate purpose is making "an IDE for media producers", writing with text editor is like coding with notepad, and we want writing with lumin would be like coding with a best IDE!

In the technical sense of the project,

The next step in the project is to use the cache to optimize the search. (Redis, Memcache) And separate the project structure, Make the project's functions pluggable

The current media workers will encounter a variety of problems at work. There are several typical problems.

Cognitive difficulties for things that are not in their own domain (thus ignoring the questions asked by interviewees or being a layman at the time of writing a press release) A typical example is the news of the previous weeks, "Riemann conjecture Artia". Many journalists There is not enough knowledge of the "Riemann conjecture" or "Adia" (even the most obvious) In fact, the above questions can be summarized as no tool chain (technical stack) and the tool chain is not well configured.

No toolchain Imagine if programmers were still using notepad programming until today, how much efficiency programming would be affected. :(

The toolchain is not well configured. Similar to Java Spring Boot, when you are not born, everyone is using xml configuration to program. For the front end, this automatic configuration serves as a project template ( /create-react-app)

We believe that media workers are facing the dilemma that programmers have faced many years ago.


Looking for similar reports Event, geography, time

Record search Where is it stronger than its peers? Positive and negative feedback on the body of the text. Get rid of the search engine's request word limit

Body Field -> Generate Function Search Field -> Suppress / Fire Function

Celebrity recognition

Geographical connection

Highlight association

Picture recommendation

But it is undeniable that for many journalists to report first-hand, they rarely use pictures circulating on the Internet. They are more from their own company's resources and their own pictures, but these pictures can actually represent higher dimensions. The knowledge of our work can be imported into the picture to complete the function of finding relevant news from the picture

In fact, many of these pictures are taken by reporters themselves.

These images or texts often imply geographic information.

Use this geographic information to find information related to this area.


Firstly, a user spoke to Lumin and asked it to display Taylor Swift's New Album

Engine returns to user the cover of Taylor's "Reputation"

Lumin In iPad

Geography information test (Experimental function)

youtube video

Share this project: