A plataforma Eclipse está estruturada em redor do conceito de plug-ins. Os plug-ins são agrupamentos de código e/ou dados estruturados que contribuem com funcionalidades para o sistema. Este contributo de funcionalidades pode ser sob forma de bibliotecas de código (classes Java com API pública), extensões à plataforma ou até documentação. Os plug-ins podem definir pontos de extensão, os quais são sítios bem definidos onde os outros plug-ins podem adicionar funcionalidades.
Cada subsistema na plataforma está por si só estruturado como conjunto de plug-ins que implementa uma funcionalidade essencial. Alguns plug-ins adicionam funções visíveis à plataforma através do modelo de extensão. Outros fornecem bibliotecas de classes que se podem utilizar para implementar extensões de sistema.
O SDK do Eclipse inclui a plataforma básica mais duas importantes ferramentas úteis para desenvolvimento de plug-ins. As ferramentas de desenvolvimento Java (Java development tools (JDT)) implementam um ambiente de desenvolvimento Java de funções completas. O Plug-in Developer Environment (PDE - ambiente de programador de plug-ins) adiciona ferramentas especializadas que dinamizam o desenvolvimento de plug-ins e extensões.
Estas ferramentas não servem somente um objectivo útil como também constituem um bom exemplo de como se pode adicionar novas ferramentas à plataforma, mediante construção de plug-ins que estendem o sistema.